Python连接Mysql进行增删改查的示例代码

所属分类: 脚本专栏 / python 阅读数: 1068
收藏 0 赞 0 分享

Python连接Mysql

1.安装对应的库

使用Python连接Mysql数据库需要安装相应的库

以管理员身份运行cmd,输入命令

pip install mysql.connector

安装完成后建立
test.py
写入
import mysql.connector
保存后运行
python test.py
用以测试模块库是否安装完成,如果不报错,说明安装完成

2.进行连接测试

编写connectTest.py文件
文件内容:

import mysql.connector


connect = mysql.connector.connect(
 host="127.0.0.1",  # 数据库主机地址
 user="root",   # 数据库用户名
 passwd="root",   # 数据库密码
 database="mysql" # 要连接的数据库
)
#关闭连接
connect.close()

运行文件python connectTest.py如果没有报错提示说明连接成功,如果报错提示


说明连接失败,请检查账户、密码以及数据库是否正确,查看数据库是否开机

3.执行sql命令

3.1创建表

import mysql.connector


connect = mysql.connector.connect(
 host="127.0.0.1",  # 数据库主机地址
 user="root",   # 数据库用户名
 passwd="root",   # 数据库密码
 database="test" 		# 要连接的数据库
)

#数据库建表指令
sql = """CREATE TABLE `test`.`testtable` (
  `id` int NOT NULL,
  `name` varchar(255) NULL,
  `age` int NULL,
  `address` varchar(255) NULL,
  PRIMARY KEY (`id`)
  );"""
#获取数据库操作游标
myCursor=connect.cursor()
#执行sql语句
myCursor.execute(sql)
#提交给数据库执行命令
connect.commit()

connect.close()

执行后会创建一个名为testtabe的表

3.2插入数据

import mysql.connector


connect = mysql.connector.connect(
 host="127.0.0.1",  # 数据库主机地址
 user="root",   # 数据库用户名
 passwd="root",   # 数据库密码
 database="test"   # 要连接的数据库
)

# 数据库插入指令,待定字符无论是数值还是文字,都需要用%s
sql = "INSERT INTO `test`.`testtable`(`id`, `name`, `age`, `address`) VALUES (%s,%s,%s,%s)"

var = (1, 'windSnowLi', 20, '中国')


# 获取数据库操作游标
myCursor = connect.cursor()
try:
 # 执行sql语句
 myCursor.execute(sql, var)
 # 提交给数据库执行命令
 connect.commit()
except :
 #回滚,以防出现错误
 connect.rollback()

connect.close()

随后检查数据库

3.3查询语句

import mysql.connector


connect = mysql.connector.connect(
 host="127.0.0.1",  # 数据库主机地址
 user="root",   # 数据库用户名
 passwd="root",   # 数据库密码
 database="test"   # 要连接的数据库
)

# 数据库查询指令
sql = "select * from testtable"


# 获取数据库操作游标
myCursor = connect.cursor()
try:
 # 执行sql语句
 myCursor.execute(sql)
 results = myCursor.fetchall()
 print(results)
except :
 print("查询失败")

connect.close()

3.4更新数据

import mysql.connector


connect = mysql.connector.connect(
 host="127.0.0.1",  # 数据库主机地址
 user="root",   # 数据库用户名
 passwd="root",   # 数据库密码
 database="test"   # 要连接的数据库
)

# 数据库更新指令
sql = "UPDATE `test`.`testtable` SET `id` = 2, `name` = 'mirror', `age` = 19, `address` = '祖国' WHERE `id` = 1"

# 获取数据库操作游标
myCursor = connect.cursor()
try:
 # 执行sql语句
 myCursor.execute(sql)
 # 提交给数据库执行命令
 connect.commit()
except :
 #回滚,以防出现错误
 connect.rollback()

connect.close()

3.5删除数据

import mysql.connector


connect = mysql.connector.connect(
 host="127.0.0.1",  # 数据库主机地址
 user="root",   # 数据库用户名
 passwd="root",   # 数据库密码
 database="test"   # 要连接的数据库
)

# 数据库删除指令
sql = "DELETE FROM `test`.`testtable` WHERE `id` = 1"

# 获取数据库操作游标
myCursor = connect.cursor()
try:
 # 执行sql语句
 myCursor.execute(sql)
 # 提交给数据库执行命令
 connect.commit()
except :
 #回滚,以防出现错误
 connect.rollback()

connect.close()

4.说明

sql语句中如果有待定字符,则都可以通过

sql = "INSERT INTO `test`.`testtable`(`id`, `name`, `age`, `address`) VALUES (%s,%s,%s,%s)"

var = (1, 'windSnowLi', 20, '中国')

这种方式拼接,不过执行时需要
myCursor.execute(sql, var)将参数也同步传入

更多精彩内容其他人还在看

Python3按一定数据位数格式处理bin文件的方法

今天小编就为大家分享一篇Python3按一定数据位数格式处理bin文件的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

对python pandas读取剪贴板内容的方法详解

今天小编就为大家分享一篇对python pandas读取剪贴板内容的方法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Python中extend和append的区别讲解

今天小编就为大家分享一篇关于Python中extend和append的区别讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享

python安装pywin32clipboard的操作方法

今天小编就为大家分享一篇python安装pywin32clipboard的操作方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

几行Python代码爬取3000+上市公司的信息

今天小编就为大家分享一篇关于几行Python代码爬取3000+上市公司的信息,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享

Python实现查找二叉搜索树第k大的节点功能示例

这篇文章主要介绍了Python实现查找二叉搜索树第k大的节点功能,结合实例形式分析了Python二叉搜索树的定义、查找、遍历等相关操作技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

Python微医挂号网医生数据抓取

今天小编就为大家分享一篇关于Python微医挂号网医生数据抓取,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享

python+pyqt5实现KFC点餐收银系统

这篇文章主要为大家详细介绍了python+pyqt5实现KFC点餐收银系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

python用opencv批量截取图像指定区域的方法

今天小编就为大家分享一篇python用opencv批量截取图像指定区域的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Python并发:多线程与多进程的详解

今天小编就为大家分享一篇关于Python并发:多线程与多进程的详解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享
查看更多