python操作数据库

文章目录

基础使用

python使用第三方库pymysql来操作mysql数据库

安装:

python 复制代码
pip install pymysql
python 复制代码
from pymysql import Connection

# 获取到MySQL数据库的链接对象

conn = Connection(
    host='localhost'    # 主机名
    ,port=3306          # 端口,默认3306
    ,user='root'        # 账户名
    ,password='1234'  # 密码
)

# 打印MySQL数据库软件信息
print(conn.get_server_info())

# 关闭到数据库的链接
conn.close()

执行非查询性质的SQL语句

python 复制代码
# 获取游标对象
cursor = conn.cursor()
conn.select_db("test")
# 使用游标对象,执行sql语句
cursor.execute("CREATE TABLE test_pymysql(id INT, info VARCHAR(255))")

执行查询性质的SQL语句

python 复制代码
# 获取游标对象
cursor = conn.cursor()
conn.select_db("test")
# 使用游标对象,执行sql语句
cursor.execute("SELECT * FROM student")
# 获取查询结果
results: tuple = cursor.fetchall()
for r in results:
    print(r)

数据插入

python 复制代码
from pymysql import Connection

# 获取到MySQL数据库的链接对象

conn = Connection(
    host='localhost'    # 主机名
    ,port=3306          # 端口,默认3306
    ,user='root'        # 账户名
    ,password='1234'  # 密码
)

# 获取游标对象
cursor = conn.cursor()
conn.select_db("test")
# 使用游标对象,执行sql语句
cursor.execute("insert into test_pymysql values(4, '5')")

# 通过commit确认,只有确认才会提交到数据库
conn.commit()

# 关闭到数据库的链接
conn.close()

这样每次写完插入语句还需要再多写一行代码commit,其实有一种简单的方法设置自动提交

python 复制代码
conn = Connection(
    host='localhost'    # 主机名
    ,port=3306          # 端口,默认3306
    ,user='root'        # 账户名
    ,password='1234'	# 密码
	,autocommit=True	# 设置自动提交
)
相关推荐
XLYcmy11 小时前
信息检索报告数字经济赋能城市低碳治理的路径研究——基于“传统数据库 + 生成式人工智能”双轮驱动的检索实践 检索实施与结果分析 Web of Science
数据库·ai·llm·prompt·ssci·deepseek·wos
Decay__11 小时前
21_MySQL 优化案例集 —— 慢 SQL 优化、索引重构与参数调整收益对比
运维·数据库·sql·mysql·架构
小小张说故事12 小时前
Python 的 a[1:5:2] 到底切出了什么?拆开 slice 对象、__getitem__ 与负步长那次反向
python
挖掘狂人12 小时前
MySQL 深分页优化:limit 100000, 10 慢在哪,怎么救
后端·sql·mysql
codigger12 小时前
MySQL 深分页优化:limit 100000, 10 慢在哪,怎么救
数据库·sql·mysql·程序员
Francek Chen12 小时前
【大数据处理与分析】数据仓库Hive:09 Hive 编程实践
大数据·数据仓库·hive·hadoop·sql
麦壳饼12 小时前
SonnetDB 5.0 正式发布:增强 SQL 与事务,开放九模型 MCP 读写
数据库·人工智能·sql·sonnetdb
wuyk55512 小时前
PyQt6-第15讲-数据可视化QChart
python·ui·信息可视化·pyqt
天天被压力12 小时前
【A股分钟级高频数据完全手册 #04】指数分钟级行情数据接口:沪深指数Pro版最新分时取数
java·人工智能·python