使用 python 创建 Mysql 数据库 - 不断收到 1064 错误(...在 '%s' 附近使用正确的语法)
Creating Mysql database with python - keep getting 1064 error (... right syntax to use near '%s' )
事情是这样的:
我正在尝试通过导入数据库名称然后创建它来创建一个新的 MySQL 数据库。
代码如下:
import mysql.connector as mcon
# DB Connect
stdb = mcon.connect(
host = "localhost",
user = "root",
password = "pass",
database = "trffc_int_data")
cursor = stdb.cursor()
# Creating new DB
NewDB = input(" Enter the Database name : ")
sqlsynt = "CREATE DATABASE IF NOT EXISTS %s"
cursor.execute(sqlsynt,NewDB)
cursor.commit()
print ("New database created!")
看起来不错,但我不断收到错误“1065 >> 您的 SQL 语法有错误;请查看与您的 MySQL 服务器版本对应的手册在“%s”<<"
附近使用的正确语法
它指向的行:cursor.execute(sqlsynt,NewDB)
可能是什么问题?
您不能像那样绑定对象名称(在本例中为数据库名称),只能绑定值。您将不得不求助于字符串格式。例如:
newDB = input(" Enter the Database name : ")
sqlsynt = f"CREATE DATABASE IF NOT EXISTS {newDB}"
cursor.execute(sqlsynt,NewDB)
事情是这样的: 我正在尝试通过导入数据库名称然后创建它来创建一个新的 MySQL 数据库。
代码如下:
import mysql.connector as mcon
# DB Connect
stdb = mcon.connect(
host = "localhost",
user = "root",
password = "pass",
database = "trffc_int_data")
cursor = stdb.cursor()
# Creating new DB
NewDB = input(" Enter the Database name : ")
sqlsynt = "CREATE DATABASE IF NOT EXISTS %s"
cursor.execute(sqlsynt,NewDB)
cursor.commit()
print ("New database created!")
看起来不错,但我不断收到错误“1065 >> 您的 SQL 语法有错误;请查看与您的 MySQL 服务器版本对应的手册在“%s”<<"
附近使用的正确语法它指向的行:cursor.execute(sqlsynt,NewDB)
可能是什么问题?
您不能像那样绑定对象名称(在本例中为数据库名称),只能绑定值。您将不得不求助于字符串格式。例如:
newDB = input(" Enter the Database name : ")
sqlsynt = f"CREATE DATABASE IF NOT EXISTS {newDB}"
cursor.execute(sqlsynt,NewDB)