postgresql – 通过psql运行SQL脚本会产生PgAdmin中不会出现的语
发布时间:2020-12-13 16:29:40 所属栏目:百科 来源:网络整理
导读:我有以下脚本来创建一个表: -- Create State table.DROP TABLE IF EXISTS "State" CASCADE;CREATE TABLE "State" ( StateID SERIAL PRIMARY KEY NOT NULL,StateName VARCHAR(50)); 它在PgAdmin的查询工具中运行良好.但是当我尝试使用psql从命令行运行它时:
我有以下脚本来创建一个表:
-- Create State table. DROP TABLE IF EXISTS "State" CASCADE; CREATE TABLE "State" ( StateID SERIAL PRIMARY KEY NOT NULL,StateName VARCHAR(50) ); 它在PgAdmin的查询工具中运行良好.但是当我尝试使用psql从命令行运行它时: psql -U postgres -d dbname -f 00101-CreateStateTable.sql 我收到语法错误,如下所示. 2: ERROR: syntax error at or near "" LINE 1: ^ psql:00101-CreateStateTable.sql:6: NOTICE: CREATE TABLE will create implicit sequence "State_stateid_seq" for serial column "State.stateid" psql:00101-CreateStateTable.sql:6: NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "State_pkey" for table "State" CREATE TABLE 为什么我使用psql而不是pgAdmin会出现语法错误?
通过十六进制转储程序运行您的文件00101-CreateStateTable.sql.我敢打赌你在文件的开头有一个UTF-16标记(在“ – ”注释字符之前).
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |