【发布时间】:2019-06-23 17:08:44
【问题描述】:
尝试创建一个通过 %s 运算符给出名称的数据库。
import mysql.connector, MySQLdb
db_name='SomeString'
#create connection to mysql
mydb=mysql.connector.connect(host="localhost",user="root")
#init cursor
mycursor=mydb.cursor()
#create database
mycursor.execute("CREATE DATABASE (%s)", (db_name))
这是错误信息:
mysql.connector.errors.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 '(%s)' at line 1
【问题讨论】:
-
欢迎来到 SO。您无需将
%s括在括号中。这就是导致语法错误的原因。db_name附近也不需要它们。 -
谢谢!不幸的是,我已经尝试过不带括号的方法:mycursor.execute("CREATE DATABASE %s", db_name)。出现同样的错误:/
-
对不起,有点暗!见答案。
标签: python mysql mysql-python