我是teradata和scala的新手。我在scala中执行一个查询,该查询正在抛出SQL Exception,但Teradata studio中相同的查询运行良好。SCALA TERADATA SQL例外
下面是查询:
接收SELECT COUNT(loan_no)
,field1
,field2
,field3
FROM testdb.loan
WHERE field1 < DATE '2017-09-30'
GROUP BY field1
,field2
,field3
ORDER BY field1
错误是:
java.sql.SQLException中:[Teradata数据库] [TeraJDBC 15.00.00.20] [错误3707] [42000的SQLState ]语法错误,预期类似于 名称或Unicode分隔标识符或'UDFCALLNAME'关键字或 '(''FROM'关键字和'选择'关键字之间的关系
Scala代码
val queryString = "SELECT COUNT(loan_no),field1,field2,field3 FROM testdb.loan WHERE field1 < DATE '2017-09-30' GROUP BY field1,field2,field3 ORDER BY field1"
val connString =
"jdbc:teradata://test.udaystd.com/,TMODE=TERA,charset=UTF8,
user="+userid+", password="+passwd+", ,charset=UTF8"
val dbdriver = "com.teradata.jdbc.TeraDriver"
val jddf = sqlContext.load("jdbc",
Map("url" -> connString,
"dbtable" -> queryString,
"driver" -> dbdriver))
请帮助。
可以显示包含此查询的Scala代码吗?听起来像这可能是你创建字符串文字的一个问题。 –
你可以尝试运行它w/out where子句吗? –
我也试过,结果是一样的错误。它的工作方式唯一的方法是当我(像(从testdb.loan选择*)作为loandata) –