python与Mysql的交互(代码实例)
程序员文章站
2022-03-09 22:13:51
python与Mysql的交互(代码实例)
1.链接数据库
import pymysql
# 连接数据库
# 参数1:mysql服务所在主机的IP
# 参数2:用...
python与Mysql的交互(代码实例)
1.链接数据库 import pymysql # 连接数据库 # 参数1:mysql服务所在主机的IP # 参数2:用户名 # 参数3:密码 # 参数4:要连接的数据库名 #db = pymysql.connect("localhost", "root", "sunck", "kaige") db = pymysql.connect("10.0.142.171", "root", "sunck", "kaige") # 创建一个cursor对象 cursor = db.cursor() sql = "select version()" #执行sql语句 cursor.execute(sql) #获取返回的信息 data = cursor.fetchone() print(data) #断开 cursor.close() db.close() 2.创建数据库表 import pymysql db = pymysql.connect("10.0.142.171", "root", "sunck", "kaige") cursor = db.cursor() # 检查表是否存在,如果存则删除 cursor.execute("drop table if exists bandcard") #建表 sql = 'create table bandcard(id int auto_increment primary key, money int not null)' cursor.execute(sql) cursor.close() db.close() 3.数据库插入数据 import pymysql db = pymysql.connect("10.0.142.171", "root", "sunck", "kaige") cursor = db.cursor() sql = 'insert into bandcard values(0, 300),(0, 400),(0, 500),(0, 600),(0, 700)' try: cursor.execute(sql) db.commit() except: # 如果提交失败,回滚到上一次数据 db.rollback() cursor.close() db.close() 4.数据库更新操作 import pymysql db = pymysql.connect("10.0.142.171", "root", "sunck", "kaige") cursor = db.cursor() sql = 'update bandcard set money=1000 where id=1' try: cursor.execute(sql) db.commit() except: # 如果提交失败,回滚到上一次数据 db.rollback() cursor.close() db.close() 5数据库删除操作 import pymysql db = pymysql.connect("10.0.142.171", "root", "sunck", "kaige") cursor = db.cursor() # 检查表是否存在,如果存则删除 cursor.execute("drop table if exists bandcard") #建表 sql = 'create table bandcard(id int auto_increment primary key, money int not null)' cursor.execute(sql) cursor.close() db.close() 6.数据库查询操作 ''' fetchone() 功能:获取下一个查询结果集,结果集是一个对象 fetchall() 功能:接收全部的返回的行 rowcount:是一个只读属性,返回execute()方法影响的行数 ''' import pymysql db = pymysql.connect("10.0.142.171", "root", "sunck", "kaige") cursor = db.cursor() sql = 'select * from bandcard where money>400' try: cursor.execute(sql) reslist = cursor.fetchall() for row in reslist: print("%d--%d" % (row[0], row[1])) except: # 如果提交失败,回滚到上一次数据 db.rollback() cursor.close() db.close()