以下のpostgresコマンドで、data.sql
を元に、指定のDBにデータのinsertを行いたいです。
bash
1psql -h hostname -U user db < data.sql -v testdate="2019-04-01 18:15:19"
data.sqlの中身は以下の通りです
sql
1 INSERT INTO public.items VALUES (8, 'aaa', 1, 7, 10, 1, 'testtesttesttest', 4, :testdate, '2019-04-01 18:15:19', NULL); 2
dbの構造に関しては詳しくお伝えできないのですが、:testdate
が対応するカラムの型はtimestamp(0) without でtime zone
です。
上記のコマンドを実行すると、以下のようなエラーが出ます
ERROR: syntax error at or near "18" LINE 1: ...', 1, 7, 10, 1, 'testtesttesttest', 4, 2019-04-01 18:15:19::...
どうやら、通常クォーテーションで囲まれるべきところが囲まれずに代入されておるようで、スペース後の時間のところでsyntax errorになっておるようです。
正しくtimesetamp型のデータを渡すにはどうすれば良いでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/04/20 13:01