Python 中操作mysql数据库

我们经常运用mysql 数据库存储数据,在python中,应用也比较广泛,今天将主要的几个操作罗列一下。

在使用前,要确保电脑安装了mysql,并且正常启动。

操作mysql需要导入支持包

import pymysql

(一)连接数据库,操作如下:

打开数据库连接,参数1:主机名或IP;参数2:用户名;参数3:密码;参数4:数据库名

db = pymysql.connect(host='127.0.0.1', user='root', password='123456', database='owndataba')

使用cursor()创建一个cursor对象

cursor = db.cursor()

使用execute()方法执行SQL查询

cursor.execute("SELECT VERSION()")

使用fetchone()方法获取单条数据

data = cursor.fetchone()

print("Database version: %s" % data)

关闭数据库

db.close()

(二)创建数据库表流程如下:

import pymysql

打开数据库连接,参数1:主机名或IP;参数2:用户名;参数3:密码;参数4:数据库名

db = pymysql.connect(host='127.0.0.1', user='root', password='123456', database='owndataba')

使用cursor()创建一个cursor对象

cursor = db.cursor()

使用execute()方法执行SQL语句,如果表存在删除

cursor.execute("DROP TABLE IF EXISTS books")

使用预处理语句创建表

sql = """CREATE TABLE books(

id int(8) NOT NULL AUTO_INCREMENT,

name varchar(50) NOT NULL,

category varchar(50) NOT NULL,

price decimal(10,2) DEFAULT NULL,

publish_time date DEFAULT NULL,

PRIMARY KEY (id)

) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

"""

执行SQL语句

cursor.execute(sql)

关闭连接数据库

db.close()

(三)增加数据操作如下:

import pymysql

连接数据库

db = pymysql.connect(host='127.0.0.1', user='root', password='123456', database='owndataba')

使用cursor()创建一个cursor对象

cursor = db.cursor()

数据列表

data = [

("演讲与口才", "Python", "79.80", "2022-5-30"),

("高情商,好口才", "Java", "69.80", "2022-4-19"),

("学会说话很重要", "Python", "89.80", "2022-5-19"),

("说到点子上", "PHP", "99.80", "2022-2-19"),

]

try:

执行SQL,插入多条数据

cursor.executemany("insert into books(name,category,price,publish_time) values (%s,%s,%s,%s)", data)

提交数据

db.commit()

except:

发生错误时回滚

db.rollback()

关闭数据库连接

db.close()

相关推荐
旅僧14 分钟前
Q-learning(自用)
python·机器学习
Python大数据分析@33 分钟前
曝梁文锋称「一度不想维护C端用户,奈何赶不走」,DeepSeek真不需要C端用户吗?可能会有啥影响吗?
python
艾斯特_2 小时前
工作流与多Agent协作:LangGraph、MCP和A2A的应用分层
人工智能·python·ai
IT小盘2 小时前
04-大模型流式输出原理-SSE与Python实现
开发语言·网络·人工智能·python
我叫黑大帅2 小时前
add()和 __add__() 写法哪个更好呢?
后端·python·面试
不如语冰2 小时前
AI大模型入门-Python进阶-上下文管理与with语句
开发语言·数据结构·数据库·人工智能·pytorch·redis·python
柠檬味的Cat2 小时前
GEO优化系统哪个渠道商好
大数据·人工智能·python
青春不败 177-3266-05203 小时前
基于Python实现的深度学习技术在水文水质领域应用
python·深度学习·机器学习·水文水资源·水质模型
阿童木写作3 小时前
Python批量翻译亚马逊商品图实战教程
开发语言·python·xcode
砚底藏山河3 小时前
多家股票数据接口对比、企业级股票数据API
java·python·金融·maven