脚本专栏 
首页 > 脚本专栏 > 浏览文章

详解使用pymysql在python中对mysql的增删改查操作(综合)

(编辑:jimmy 日期: 2024/11/19 浏览:3 次 )

这一次将使用pymysql来进行一次对MySQL的增删改查的全部操作,相当于对前五次的总结:

先查阅数据库:

详解使用pymysql在python中对mysql的增删改查操作(综合)

现在编写源码进行增删改查操作,源码为:

#!/usr/bin/python 
#coding:gbk 
import pymysql 
from builtins import int 
 
#将MysqlHelper的几个函数写出来 
 
def connDB():               #连接数据库 
  conn=pymysql.connect(host="localhost",user="root",passwd="zx69728537",db="student"); 
  cur=conn.cursor(); 
  return (conn,cur); 
 
def exeUpdate(conn,cur,sql):        #更新或插入操作 
  sta=cur.execute(sql); 
  conn.commit(); 
  return (sta); 
 
def exeDelete(conn,cur,IDs):        #删除操作 
  sta=0; 
  for eachID in IDs.split(' '): 
    sta+=cur.execute("delete from students where Id=%d"%(int(eachID))); 
  conn.commit(); 
  return (sta); 
     
def exeQuery(cur,sql):           #查找操作 
  cur.execute(sql); 
  return (cur); 
   
def connClose(conn,cur):          #关闭连接,释放资源 
  cur.close(); 
  conn.close(); 
 
result=True; 
print("请选择以上四个操作:1、修改记录,2、增加记录,3、查询记录,4、删除记录.(按q为退出)"); 
conn,cur=connDB(); 
number=input(); 
while(result): 
  if(number=='q'): 
    print("结束操作"); 
    break; 
  elif(int(number)==1): 
    sql=input("请输入更新语句:"); 
    try: 
      exeUpdate(conn, cur, sql); 
      print("更新成功"); 
    except Exception: 
      print("更新失败"); 
      raise; 
  elif(int(number)==2): 
      sql=input("请输入新增语句:"); 
      try: 
        exeUpdate(conn, cur, sql); 
        print("新增成功"); 
      except Exception: 
        print("新增失败"); 
        raise; 
  elif(int(number)==3): 
    sql=input("请输入查询语句:"); 
    try: 
      cur=exeQuery(cur, sql); 
      for item in cur: 
        print("Id="+str(item[0])+" name="+item[1]); 
    except Exception: 
      print("查询出错"); 
      raise; 
  elif(int(number)==4): 
    Ids=input("请输入Id,并用空格隔开"); 
    try: 
      exeDelete(conn, cur, Ids); 
      print("删除成功"); 
    except Exception: 
      print("删除失败"); 
      raise; 
  else: 
    print("非法输入,将结束操作!"); 
    result=False; 
    break; 
  print("请选择以上四个操作:1、修改记录,2、增加记录,3、查询记录,4、删除记录.(按q为退出)"); 
  number=input("请选择操作"); 

现在运行程序观察:

详解使用pymysql在python中对mysql的增删改查操作(综合)

现在查询数据库:

详解使用pymysql在python中对mysql的增删改查操作(综合)

可以看到数据库中新增了一条数据,现在进行更新数据:

详解使用pymysql在python中对mysql的增删改查操作(综合)

现在我们不在查询数据库,直接在该程序中进行查询,如图:

详解使用pymysql在python中对mysql的增删改查操作(综合)

可以看到已经将第四条数据的Name更新为bingwen,现在进行删除操作,删除第四条记录,如图:

详解使用pymysql在python中对mysql的增删改查操作(综合)

现在我们在数据库中进行查询是否将该数据删除,如图:

详解使用pymysql在python中对mysql的增删改查操作(综合)

可以看到删除操作已经成功进行,现在退出当前程序,如图:

详解使用pymysql在python中对mysql的增删改查操作(综合)

如此,pymysql对mysql数据库的增删改查操作便完成了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

上一篇:python解决汉字编码问题:Unicode Decode Error
下一篇:Python 3.x 连接数据库示例(pymysql 方式)
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?