MySQL 连接器的 python 代码中的语法错误是什么?
What is the error in syntax in python code for MySQL connector?
这是一个 python 代码,用于通过 mysql-connector 在 MySQL 中创建 table。但是它在将 datetime 数据类型分配给字段时显示 ProgrammingError。
import mysql.connector as sqltor
from datetime import datetime
mycon = sqltor.connect(host='localhost',database='linkbook',user='root',passwd='****')
cursor = mycon.cursor()
cursor.execute("CREATE TABLE IF NOT EXISTS account\
(UserID varchar(10) Primary Key, \
Firstname varchar(15), \
Lastname varchar(15), \
Password varchar(10), \
Links_Posted int DEFAULT 0)")
cursor.execute("CREATE TABLE IF NOT EXISTS linkbook \
(UserID varchar(10), \
Links varchar(50), \
Description varchar(100), \
Tag varchar(15), \
date_time datetime)")
cursor.execute("CREATE TABLE IF NOT EXISTS edu_links\
(UserID varchar(10) \
Link varchar(50), \
Description varchar(100), \
date_time datetime)") #Error in this line
Exception has occurred: ProgrammingError
1064 (42000): 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 'Link varchar(50), Description varchar(100), date_t' at line 1
请帮助获得正确的语法。谢谢。
如果您仔细查看最后一个 cursor.execute 方法调用,您会发现在 UserID varchar(10) 之后缺少一个逗号。然后,这将使用以下参数值更改您的最终 cursor.execute 调用:
cursor.execute("CREATE TABLE IF NOT EXISTS edu_links\
(UserID varchar(10), \
Link varchar(50), \
Description varchar(100), \
date_time datetime)")
这是一个 python 代码,用于通过 mysql-connector 在 MySQL 中创建 table。但是它在将 datetime 数据类型分配给字段时显示 ProgrammingError。
import mysql.connector as sqltor
from datetime import datetime
mycon = sqltor.connect(host='localhost',database='linkbook',user='root',passwd='****')
cursor = mycon.cursor()
cursor.execute("CREATE TABLE IF NOT EXISTS account\
(UserID varchar(10) Primary Key, \
Firstname varchar(15), \
Lastname varchar(15), \
Password varchar(10), \
Links_Posted int DEFAULT 0)")
cursor.execute("CREATE TABLE IF NOT EXISTS linkbook \
(UserID varchar(10), \
Links varchar(50), \
Description varchar(100), \
Tag varchar(15), \
date_time datetime)")
cursor.execute("CREATE TABLE IF NOT EXISTS edu_links\
(UserID varchar(10) \
Link varchar(50), \
Description varchar(100), \
date_time datetime)") #Error in this line
Exception has occurred: ProgrammingError
1064 (42000): 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 'Link varchar(50), Description varchar(100), date_t' at line 1
请帮助获得正确的语法。谢谢。
如果您仔细查看最后一个 cursor.execute 方法调用,您会发现在 UserID varchar(10) 之后缺少一个逗号。然后,这将使用以下参数值更改您的最终 cursor.execute 调用:
cursor.execute("CREATE TABLE IF NOT EXISTS edu_links\
(UserID varchar(10), \
Link varchar(50), \
Description varchar(100), \
date_time datetime)")