选择python中的mysql数据库

3qpi33ja  于 2021-09-29  发布在  Java
关注(0)|答案(1)|浏览(205)

我知道我可以在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)
8cdiaqws

8cdiaqws1#

根据mysql文档,语法为:

CREATE DATABASE `db_name`;

然后,要选择/更改数据库,请使用:

USE `db_name`;

要列出所有可用数据库,请使用:

SHOW DATABASES;

或者,您可以跳过 USE 命令并在语句本身中引用数据库,如下所示:

CREATE TABLE `db_name`.`table1` ... ;

或者,如果是 SELECT 声明:

SELECT * FROM `db_name`.`table1`;

相关问题