Python使用pymql操作数据库的增删改查实例
数据库:
一、新增:
import pymysql # 导入pymysql包
conn=pymysql.connect(host='localhost',user='root',passwd='123',db='db_goods',port=3306,charset='utf8')
cur=conn.cursor()#获取一个游标
sql="INSERT INTO `tb_good`(`tb_name`,`tb_auto`,`tb_presie`) VALUE(%s,%s,%s)" # python的sql语句转为符是:%s 。
data=cur.executemany(sql,[("《三毛流浪记》","三毛",15),("《小心流浪记》","三毛",15)]) # 多条语句插入,
# data = cur.execute(sql,("《三毛流浪记》","三毛",15)) #单条插入
conn.commit() # 提交
print(data) # 打印返回结果
cur.close() # 关闭游标
conn.close() # 关闭连接
二、删除:
import pymysql # 导入pymysql包
conn=pymysql.connect(host='localhost',user='root',passwd='123',db='db_goods',port=3306,charset='utf8')
cur=conn.cursor()#获取一个游标
sql="delete from `tb_good` where `tb_id` = %s" # python的sql语句转为符是:%s 。
data = cur.execute(sql,15) #执行
conn.commit() # 提交
print(data) # 打印返回结果
cur.close() # 关闭游标
conn.close() # 关闭连接
三、修改:
import pymysql # 导入pymysql包
conn=pymysql.connect(host='localhost',user='root',passwd='123',db='db_goods',port=3306,charset='utf8')
cur=conn.cursor()#获取一个游标
sql="UPDATE `tb_good` SET `tb_name` = %s WHERE `tb_id`=%s" # python的sql语句转为符是:%s 。
data = cur.execute(sql,('《python操作数据库》',15)) #执行
conn.commit() # 提交
print(data) # 打印返回结果
cur.close() # 关闭游标
conn.close() # 关闭连接
四、查询:
#导入pymysql的包
import pymysql
try:
#获取一个数据库连接,注意如果是UTF-8类型的,需要制定数据库
conn=pymysql.connect(host='localhost',user='root',passwd='123',db='db_goods',port=3306,charset='utf8')
cur=conn.cursor()#获取一个游标
sql="SELECT * FROM `tb_good` WHERE tb_id = %s"
cur.execute(sql,15)
data=cur.fetchall()
for d in data :
#注意int类型需要使用str函数转义
print("id: "+str(d[0])+' 名称: '+d[1]+" 作者: "+d[2]+" 价格 :"+str(d[3]))
cur.close()#关闭游标
conn.close()#释放数据库资源
except Exception :print("查询失败")