這一次將使用pymysql來進行一次對MySQL的增刪改查的全部操作,相當於對前五次的總結:
先查閱數據庫:
現在編寫源碼進行增刪改查操作,源碼為:
代碼如下復制代碼
#!/usr/bin/python
#coding:gbk
importpymysql
frombuiltinsimportint
#將MysqlHelper的幾個函數寫出來
defconnDB(): #連接數據庫
conn=pymysql.connect(host="localhost",user="root",passwd="zx69728537",db="student");
cur=conn.cursor();
return(conn,cur);
defexeUpdate(conn,cur,sql): #更新或插入操作
sta=cur.execute(sql);
conn.commit();
return(sta);
defexeDelete(conn,cur,IDs): #刪除操作
sta=0;
foreachIDinIDs.split(' '):
sta+=cur.execute("delete from students where Id=%d"%(int(eachID)));
conn.commit();
return(sta);
defexeQuery(cur,sql): #查找操作
cur.execute(sql);
return(cur);
defconnClose(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("更新成功");
exceptException:
print("更新失敗");
raise;
elif(int(number)==2):
sql=input("請輸入新增語句:");
try:
exeUpdate(conn, cur, sql);
print("新增成功");
exceptException:
print("新增失敗");
raise;
elif(int(number)==3):
sql=input("請輸入查詢語句:");
try:
cur=exeQuery(cur, sql);
foritemincur:
print("Id="+str(item[0])+" name="+item[1]);
exceptException:
print("查詢出錯");
raise;
elif(int(number)==4):
Ids=input("請輸入Id,並用空格隔開");
try:
exeDelete(conn, cur, Ids);
print("刪除成功");
exceptException:
print("刪除失敗");
raise;
else:
print("非法輸入,將結束操作!");
result=False;
break;
print("請選擇以上四個操作:1、修改記錄,2、增加記錄,3、查詢記錄,4、刪除記錄.(按q為退出)");
number=input("請選擇操作");
現在運行程序觀察:
現在查詢數據庫:
可以看到數據庫中新增了一條數據,現在進行更新數據:
現在我們不在查詢數據庫,直接在該程序中進行查詢,如圖:
可以看到已經將第四條數據的Name更新為bingwen,現在進行刪除操作,刪除第四條記錄,如圖:
現在我們在數據庫中進行查詢是否將該數據刪除,如圖:
可以看到刪除操作已經成功進行,現在退出當前程序,如圖:
如此,pymysql對mysql數據庫的增刪改查操作便完成了。