我是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) –