Postgresql 在或附近出现语法错误
我知道这将是一个前额打击。当我高亮显示并执行复制命令时,它工作正常。但是,当我将其放入do语句并执行时,我会得到错误:Postgresql 在或附近出现语法错误,postgresql,syntax,Postgresql,Syntax,我知道这将是一个前额打击。当我高亮显示并执行复制命令时,它工作正常。但是,当我将其放入do语句并执行时,我会得到错误: ERROR: syntax error at or near "Warner" 我环顾四周,找不到明显的解决办法。我移动了do语句末尾的分号,将其删除,错误不会消失。有什么想法吗?谢谢 DO $$ BEGIN COPY _tmp_employer_create FROM STDIN; Warner Bros. Entertainment Inc. Manually Ente
ERROR: syntax error at or near "Warner"
我环顾四周,找不到明显的解决办法。我移动了do语句末尾的分号,将其删除,错误不会消失。有什么想法吗?谢谢
DO
$$
BEGIN
COPY _tmp_employer_create FROM STDIN;
Warner Bros. Entertainment Inc. Manually Entered Manually_Entered-Unverified STUDIO
Disney. Entertainment. Manually Entered Manually_Entered-Unverified STUDIO
\.
END;
$$
为什么在这里使用内联块(DO语句)?这毫无意义。更多-内联块被解析为语法树-这意味着它有效地断开了与stdin的连接-所以没有办法,如何在DO语句中使用副本和数据
从服务器端脚本访问stdin或stdout是非常困难的,在典型的级别上是不可能的。我有一些不利于我的事情。我是一个新手(对PostgreSQL而言),网络管理员今天不在,否则我完全会从文件中完成这项工作。但我感谢你指出这些事情。我只需要手动执行它,直到周一(当网络管理员回来的时候)。如果你有一些CSV格式的文件,那么使用简单的复制语句。不要使用DO语句。如果可以启动控制台-psql,则可以编写-“\copy\u tmp\u employer\u create from pathfile csv”