我在python中使用MySQLdb,但无法使用主键或外键创建表。由于以下工作,我可以创建一个表:
theconn = mdb.connect('localhost', 'root', 'pw', 'db')
theDB = theconn.cursor();
theDB.execute("CREATE TABLE hf_aum_returns ( \
FundID INT NOT NULL , \
Metric_Type CHAR(10) , \
Metric_Value FLOAT , \
DateTime DATE )")
但是,当我运行以下行时:
theDB.execute("CREATE TABLE hf_aum_returns_2 ( \
FundID INT NOT NULL , \
Metric_Type CHAR(10) , \
Metric_Value FLOAT , \
DateTime DATE , \
CONSTRAINT returns_pk PRIMARY KEY ( FundID , Metric_Type , Metric_Value , DateTime )")
我收到一个错误,告诉我检查语法:
_mysql_exceptions.ProgrammingError: (1064,
"You have an error in your SQL syntax;
check the manual that corresponds to your
MySQL server version for the right syntax to use near '' at line 1")
最佳答案
啊。我不聪明。声明末尾缺少括号。 (...盯着它看了一个小时...)