pymysql数据库的简单使用

本文详细介绍如何使用Python的pymysql模块进行数据库操作,包括建立连接、执行SQL语句创建表格、插入数据、查询、更新及删除记录等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# 导入pymysql
import pymysql

# 1.建立连接
# localhost = 127.0.0.1
conn = pymysql.connect(
    # 主机地址
    host='127.0.0.1',
    # 端口号
    port=3306,
    # 用户名
    user='root',
    # 密码
    password='123456',
    # 使用的数据库
    db='books',
    # 注意:utf8  没有-
    charset='utf8'
)
# 2.获取数据库连接游标
# 指定字典类型的游标 cursor=pymysql.cursors.DictCursor
cursor = conn.cursor()

# 3.执行sql语句
# PRIMARY KEY(主键约束) NOT NULL(非空约束) AUTO_INCREMENT(自动增长)
sql = "CREATE TABLE IF NOT EXISTS books(bid INTEGER PRIMARY KEY NOT NULL AUTO_INCREMENT, name CHAR(50), author CHAR(20), ntype CHAR(20))"
cursor.execute(sql)

# 4.插入数据
# for x in range(10):
#     # 拼接sql语句
#     # 可能会有sql注入的风险
#     # 使用字符串拼接sql语句
#     # sql = f"INSERT INTO books(name,author,ntype)VALUES('斗破苍穹第{x}部','天蚕土豆','玄幻奇幻')"
#     # 执行sql语句
#     # execute(sql,sql需要拼接的参数),可以防止sql注入
#     cursor.execute("INSERT INTO books(name, author, ntype)VALUES(%s, %s, %s)", (f'斗破苍穹第{x}部', '天蚕土豆', '玄幻奇幻'))
#     # 提交操作
#     conn.commit()

# 5.查询数据
# 接收查询数据
# result是一个数字,表示sql语句执行了多少条数据
result = cursor.execute('SELECT * FROM books')
# 取出查询的结果
# fetchall()返回一个大元组,元组里面存放小元组,小元组就是查询到的数据
s = cursor.fetchall()
print(s)

# for bid, name, author, ntype in result:
#     print(bid,name,author,ntype)

# fetchone()取出第一条数据,是一个元组
# result = cursor.fetchone()
# print(result)

# fetchmany()取出指定个数的数据
# s = cursor.fetchmany(3)
# print(s)

# 修改数据
cursor.execute('UPDATE books SET author=%s WHERE bid > %s',('唐家三少',10))
conn.commit()

# 删除
# 元组中若只有一条数据,一定要在最后加上一个逗号,表示后面没有数据了
cursor.execute('DELETE FROM books WHERE bid>%s',(10,))
conn.commit()

# 关闭游标
cursor.close()
# 关闭数据库连接
conn.close()
使用 PyMySQL 连接并打开数据库的过程相对简单,主要通过 `pymysql.connect()` 方法实现。以下是详细的步骤说明: 首先,需要确保已经安装了 PyMySQL 库。可以通过 pip 安装它: ```bash pip install pymysql ``` 接着,可以使用以下代码片段来连接 MySQL 数据库: ```python import pymysql # 打开数据库连接 db = pymysql.connect( host='localhost', # 数据库服务器地址 user='root', # 数据库用户名 password='123456', # 数据库密码 database='auto', # 要连接的数据库名 port=3306, # 数据库端口,默认为3306 charset='utf8mb4' # 设置字符集 ) ``` 在这段代码中,`host` 参数指定了数据库服务器的位置,`user` 和 `password` 分别是登录数据库所需的用户名和密码,`database` 指定要连接的具体数据库名称,而 `port` 则是数据库服务监听的端口号,默认情况下是 3306。`charset` 参数用来设置连接使用的字符集,推荐使用 `'utf8mb4'` 以支持更广泛的字符编码,包括 Emoji 表情符号[^3]。 一旦成功建立了数据库连接,就可以进一步创建游标对象,用于执行 SQL 命令。例如: ```python # 使用 cursor() 方法创建一个游标对象 cursor = db.cursor() # 可以通过 execute() 方法运行 SQL 查询 cursor.execute("SELECT VERSION()") # 获取单条数据. data = cursor.fetchone() print("Database version : %s " % data) # 关闭游标和连接 cursor.close() db.close() ``` 这段代码展示了如何创建游标、执行简单的 SQL 查询(这里查询的是数据库版本号),以及如何处理返回的数据。最后,记得关闭游标和数据库连接以释放资源。 以上就是使用 PyMySQL 连接并打开数据库的基本方法。通过这种方式,你可以开始与 MySQL 数据库进行交互了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值