2016-07-19 8 views
0
sql"""copy updateTable 
from $path 
credentials 'aws_access_key_id=<my_access_key_id>;aws_secret_access_key=<my_secret_access_key>' 
json '<path_to_s3_repository>' 
gzip;""".update().apply() 

PostgreSQLの構文エラーコマンドの上

org.postgresql.util.PSQLException: ERROR: syntax error at or near "$1" 

を与えます。何が問題なのでしょうか?結果のクエリは、コマンドラインから実行するとうまく動作します。

+0

access_key_idまたはsecret_access_key文字列に '$ 1'が含まれていますか? – NovaDenizen

答えて

1

COPYのパラメータは使用できません。

$pathのリテラル値を文ストリングに追加して実行する必要があります。

+0

ああ、回避策はありますか? – Kakaji

+1

私が言ったように、 'COPY updatetable FROM '/ path/where/file/is' ...'のような文字列を作成し、それをデータベースに送る必要があります。私はscalaやsparkについて何も知らないが、それはPostgreSQL側からの答えだ。 –

関連する問題