一、 连接数据库
1、下载安装pymyql库
pip3 install pymysql
2、导入库(这是一个用于连接和操作MySQL数据库的Python库。)
import pymysql
3、连接数据库(这些变量用于存储数据库连接所需的信息,包括数据库主机名、用户名、密码以及要连接的数据库名称。你需要将它们替换为你实际的数据库连接参数。),最好用try except捕获异常
方法一:
DBHOST = 'localhost'//数据库连接的主机名
DBUSER = 'root'//用户名
DBPASS = 'root'//密码
DBNAME = 'dbtest'//数据库名
try:
db = pymysql.connect(host=DBHOST,user=DBUSER, password=DBPASS, database=DBNAME)
print('数据库连接成功!')
except pymysql.Error as e:
print('数据库连接失败'+str(e))
这部分代码使用pymysql.connect
函数来连接到MySQL数据库。如果连接成功,它会创建一个数据库连接对象db
。
如果你忘记了上面的数据库链接的信息,你可以连接到MySQL数据库,并执行一下的MySQL查询语句来查询这些信息
SHOW VARIABLES LIKE 'hostname';
SHOW VARIABLES LIKE 'user';
SHOW VARIABLES LIKE 'password';
SELECT DATABASE();
方法二:pymysql连接数据库
import pymysql
# 创建数据库连接
conn = pymysql.connect(
host = '127.0.0.1', # 连接主机, 默认127.0.0.1
user = 'root', # 用户名
passwd = '1234',# 密码
port = 3306, # 端口,默认为3306
db = 'test', # 数据库名称
charset = 'utf8' # 字符编码
)
# 生成游标对象 cursor
cursor = conn.cursor()
# 查询数据库版本
cursor.execute("select version()") # 返回值是查询到的数据数量
# 通过 fetchall方法获得数据
data = cursor.fetchone()
print("Database Version:%s" % data)
cursor.close() # 关闭游标
conn.close() # 关闭连接
二、创建一张新表
1.声明一个游标
一个游标对象cur,
游标用于执行SQL查询。
cur = db.cursor()
2、删除表格(如果存在):创建表之前先检查是否存在,如果存在则删除
这行代码执行SQL查询,如果名为 "Student" 的表格存在,就删除它。这是一个安全的操作,因为它会检查表格是否存在,如果存在则删除,否则不执行任何操作。
cur.execute('DROP TABLE IF EXISTS Student')
3、定义创建表格的SQL语句:
这行代码定义了一个SQL语句,用于创建名为 "Student" 的表格。表格包含三个列:Name(字符型,不为空)、Email(字符型)和Age(整数型)。
sqlQuery = "CREATE TABLE Student(Name CHAR(20) NOT NULL, Email CHAR(20), Age INT)"
4.执行SQL查询并创建表格:
cur.execute(sqlQuery) #是一个用于执行SQL查询或命令的Python语句。
print("表格创建成功!")
这部分代码执行之前定义的SQL查询,创建名为 "Student" 的表格。如果成功创建,它会打印 "表格创建成功!"。
-
cur
代表了一个游标(cursor)对象,游标是用于在数据库中执行SQL语句并处理结果的控制结构。 -
execute()
是游标对象的一个方法,用于执行传递给它的SQL查询或命令。 -
sqlQuery
是你想要执行的SQL查询或命令的字符串。
5.处理可能的异常:
except pymysql.Error as e:
print('表格创建失败: ' + str(e))
这个try
块还包含一个except
块,用于捕获可能发生的异常。如果在连接数据库、执行SQL查询或其他任何地方发生错误,它会将错误消息打印出来。6.关闭数据库连接:
finally:
db.close()
最后,使用finally
块来确保数据库连接被关闭,以释放资源并终止与数据库的连接。
创建一张表格的
import pymysql #导入pymysql库:
# 创建数据库连接
DBHOST = 'localhost'
DBUSER = 'user01'
DBPASS = 'user01'
DBNAME = 'test01'
try:
db = pymysql.connect(host=DBHOST,user=DBUSER, password=DBPASS, database=DBNAME)
print('数据库连接成功!')
cur = db.cursor()
#cur.execute('DROP TABLE IF EXISTS Student')
sql = "CREATE TABLE Student(Name CHAR(20) NOT NULL ,Email CHAR(20),Age int )"
cur.execute(sql)
print("表格创建成功!")
except pymysql.Error as e:
print('表格创建失败'+str(e))