我知道我可以在 mysql.connector.connect 方法中调用数据库。但是,如果数据库尚不存在,我正在尝试以编程方式创建该数据库,然后也连接以上传表数据。
目前,我的线路cursor.execute("SELECT DATABASE myDatabase")
在我的“SQL 语法”中产生错误。
如何检查数据库是否存在然后连接到它?
db = mysql.connector.connect(
host="localhost",
user=os.environ.get('MYSQL_DB_USER'),
password=os.environ.get('MYSQL_DB_USER_PASS')
)
cursor = db.cursor()
cursor.execute("CREATE DATABASE IF NOT EXISTS myDatabase")
cursor.execute("SELECT DATABASE myDatabase")
# create table on database
sql = "CREATE TABLE IF NOT EXISTS `trades` (`id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, `objectid` VARCHAR(100), `type` VARCHAR(5), `ownerid` VARCHAR(100), `color` VARCHAR(15), `shape` VARCHAR(15), `size` VARCHAR(15), PRIMARY KEY (`id`) );"
print(sql)
cursor.execute(sql)
根据MySQL 文档,语法为:
CREATE DATABASE `db_name`;
然后选择/更改数据库,使用:
USE `db_name`;
要列出所有可用的数据库,请使用:
SHOW DATABASES;
或者,您可以跳过该USE
命令并将语句本身中的数据库引用为:
CREATE TABLE `db_name`.`table1` ... ;
或者,在SELECT
声明的情况下:
SELECT * FROM `db_name`.`table1`;
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句