python-pymysql如何實現(xiàn)更新mysql表中任意字段數(shù)據(jù)
更新MySQL隨意字段里的數(shù)據(jù)
下面是我的mysql所有字段名
若字段名太多不建議使用以下方法
這里sql語句要注意一下雙引號里面用單引號.
def Changehous(): """ 修改mysql里的任意字段數(shù)據(jù) """ host = "localhost"#默認(rèn)為localhost user = "root"#用戶名 passwd = "000000"#此處輸入連接mysql的密碼 port = "3306"#端口號可以不輸入 database = "hous"#需要連接的數(shù)據(jù)庫名(不是表名) db = pymysql.connect(host, user, passwd, database)#連接mysql cursor = db.cursor()#創(chuàng)建游標(biāo) #定義一個列表,來來裝自己的字段名 #若字段名過多的話不建議使用這種方法 title = ['residential','house','area','orientation','floor','years','totalprice'] field = str(input("請輸入要修改的字段名:"))#控制臺輸入 if field in title: #如果輸入的字段名在title里面,那么就可以進行查詢了. name = str(input("請輸入要修改的內(nèi)容")) id = int(input("請修改要更新內(nèi)容的id:")) if field == title[0]: sql = "update mashine set residential='{}' where id='{}'".format(name,id) elif field == title[1]: sql = "update mashine set house='{}' where id='{}'".format(name, id) elif field == title[2]: sql = "update mashine set area='{}' where id='{}'".format(name, id) elif field == title[3]: sql = "update mashine set orientation='{}' where id='{}'".format(name, id) elif field == title[4]: sql = "update mashine set floor='{}' where id='{}'".format(name, id) elif field == title[5]: sql = "update mashine set years='{}' where id='{}'".format(name, id) elif field == title[6]: sql = "update mashine set totalprice='{}' where id='{}'".format(name, id) else: print("輸入有誤,沒有查詢到該字段!") try: cursor.execute(sql) db.commit()#提交給數(shù)據(jù)庫 print("修改成功") except Exception as e: print("修改失敗") finally: db.close()#關(guān)閉數(shù)據(jù)庫 cursor.close()#關(guān)閉游標(biāo)
這里可以看到我的表中數(shù)據(jù)
現(xiàn)在我們運行程序來修改某一字段
想改那個字段就輸入那個字段名,這里用我的residential字段做個示范
原內(nèi)容為:大道1號,現(xiàn)在我將它修改為:小道二號,我的主鍵id為1205
以上就是更新任意字段數(shù)據(jù)的代碼,有需要的可以復(fù)制
python操作mysql數(shù)據(jù)庫:使用PyMySQL或mysql-connector
使用mysql-connector連接數(shù)據(jù)庫
1、先安裝mysql-connector
pip install mysql-connector
2、連接mysql數(shù)據(jù)庫
使用mysql-connector連接數(shù)據(jù)庫
1、先安裝mysql-connector
pip install PyMySQL
2、連接mysql數(shù)據(jù)庫
對mysql數(shù)據(jù)庫進行操作
1、獲取操作游標(biāo)
2、執(zhí)行SQL語句,這里舉例查看數(shù)據(jù)庫版本,來驗證數(shù)據(jù)庫是否連接成功
運行程序結(jié)果:
3、創(chuàng)建數(shù)據(jù)庫“XJ_test”
4、查詢當(dāng)前有哪些數(shù)據(jù)庫
5、刪除數(shù)據(jù)庫“XJ_test2”
6、在“XJ_test”數(shù)據(jù)庫下創(chuàng)建數(shù)據(jù)表
7、主鍵設(shè)置:給xj_table表添加id列,并將該字段設(shè)置為主鍵,主鍵起始值為1,逐步遞增
如果還沒有創(chuàng)建表,可以在創(chuàng)建表的時候直接給字段設(shè)置主鍵:
8、刪除id字段
9、插入數(shù)據(jù)
10、批量插入數(shù)據(jù)
11、插入記錄后返回該主鍵id(如果該數(shù)據(jù)表具有id自增主鍵列)
12、查詢數(shù)據(jù)
(1)fetchall():查詢所有記錄
(2)fetchmany(n):查詢n個記錄
(3)fetchone():查詢1條數(shù)據(jù)
13、查詢指定字段數(shù)據(jù)
14、刪除數(shù)據(jù)
15、修改表數(shù)據(jù)
16、刪除表
17、刪除數(shù)據(jù)庫
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
python3 小數(shù)位的四舍五入(用兩種方法解決round 遇5不進)
這篇文章主要介紹了python3 小數(shù)位的四舍五入(用兩種方法解決round 遇5不進),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04python實現(xiàn)DEM數(shù)據(jù)的陰影生成的方法
這篇文章主要介紹了python實現(xiàn)DEM數(shù)據(jù)的陰影生成的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07PyTorch的深度學(xué)習(xí)入門教程之構(gòu)建神經(jīng)網(wǎng)絡(luò)
這篇文章主要介紹了PyTorch的深度學(xué)習(xí)入門教程之構(gòu)建神經(jīng)網(wǎng)絡(luò),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-06-06基于Python中單例模式的幾種實現(xiàn)方式及優(yōu)化詳解
下面小編就為大家分享一篇基于Python中單例模式的幾種實現(xiàn)方式及優(yōu)化詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01python 3調(diào)用百度OCR API實現(xiàn)剪貼板文字識別
這篇文章主要為大家詳細(xì)介紹了python 3調(diào)用百度OCR API實現(xiàn)剪貼板文字識別,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-09-09Python用內(nèi)置模塊來構(gòu)建REST服務(wù)與RPC服務(wù)實戰(zhàn)
這篇文章主要介紹了Python用內(nèi)置模塊來構(gòu)建REST服務(wù)與RPC服務(wù)實戰(zhàn),python在網(wǎng)絡(luò)方面封裝一些內(nèi)置模塊,可以用很簡潔的代碼實現(xiàn)端到端的通信,比如HTTP、RPC服務(wù),下文實戰(zhàn)詳情,需要的朋友可以參考一下2022-09-09