我在创建数据库和表时遇到了麻烦.需要在Python脚本中创建数据库.
#connect method has 4 parameters:
#localhost (where mysql db is located),
#database user name,
#account password,
#database name
db1 = MS.connect(host="localhost",user="root",passwd="****",db="test")
Run Code Online (Sandbox Code Playgroud)
回报
_mysql_exceptions.OperationalError: (1049, "Unknown database 'test'")
Run Code Online (Sandbox Code Playgroud)
很明显,首先需要创建db1,但是如何?我在connect()语句之前尝试过CREATE但是出错了.
创建数据库后,如何创建表?谢谢,汤姆
这是语法,这至少是第一次使用.第二次自然返回db已经存在.现在来弄清楚如何正确使用drop命令.
db = MS.connect(host="localhost",user="root",passwd="****")
db1 = db.cursor()
db1.execute('CREATE DATABASE test1')
Run Code Online (Sandbox Code Playgroud)
所以第一次这很好用.第二次通过提供警告"db已存在".怎么处理这个?以下是我认为它应该如何工作,但事实并非如此.或者它应该是if语句,寻找它是否已经存在,不填充?
import warnings
warnings.filterwarnings("ignore", "test1")
Run Code Online (Sandbox Code Playgroud) 我创建了一个表“ table2”,并在运行代码时收到警告(表已存在)。我只想创建不存在的表。一些研究MySQL语法的网站在MySQL中提供了以下内容:如果不存在则创建表
我的代码:
cursor.execute('CREATE TABLE IF NOT EXISTS (2 INT)`table2`')
Run Code Online (Sandbox Code Playgroud)
提供以下警告:
_mysql_exceptions.ProgrammingError: (1064, "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 '(2 INT)`table2`' at line 1")
Run Code Online (Sandbox Code Playgroud)
我有数据库版本数据库版本:5.1.54-1ubuntu4汤姆