How to pass the parameter with the file while executing the postgresql command in the comand line?
我有一个名为
1 2 3 4 5 | do $$ BEGIN DELETE FROM tabledetails WHERE TABLE_NAME = '$(v1)'; END; $$; |
我试图使用下面给出的命令在该文件(insert_all.sql)中执行查询。 但它没有用。 我的命令出了什么问题? 如果是错的,请就此提出建议。
1 | psql.exe -U postgres -p 5454 -h 127.0.0.1 -d desk -f D:\insert_all.sql -v v1='statusTable' |
变量选项适用于文件中的简单查询,但不适用于
1 2 3 4 5 6 | CREATE temp TABLE var_temp AS SELECT :'v1'::TEXT AS var; do $$ BEGIN DELETE FROM tabledetails WHERE TABLE_NAME =(SELECT var FROM var_temp) ; END; $$; |
1 | psql.exe -U postgres -p 5454 -h 127.0.0.1 -d desk -f D:\insert_all.sql -v v1="statusTable" |
如果您没有任何其他需要