在Python2.7脚本中,以下内容给了我一个错误,我无法弄清楚原因:
import psycopg2
conn = psycopg2.connect("dbname=mydb user=username password=password")
curs = conn.cursor()
curs.execute("CREATE TABLE newtable;")
错误如下:
Traceback (most recent call last):
File "<ipython-input-17-f4ba0186c40c>", line 1, in <module>
curs.execute("CREATE TABLE newtable;")
ProgrammingError: syntax error at or near ";"
LINE 1: CREATE TABLE newtable;
另一方面,任何SELECT
语句都能很好地运行。例如:
curs.execute("SELECT * FROM table1 LIMIT 0;")
就像一个魅力。
答案 0 :(得分:1)
CREATE TABLE newtable;
不是创建新表的正确语法。您需要定义一些列。
CREATE TABLE newtable (
foo INTEGER,
bar TEXT
);
有关详细信息,请参阅the CREATE TABLE docs。