Python接入MySQL實現增刪改查的實戰記錄
前言
我們經常需要將大量數據保存起來以備後續使用,數據庫是一個很好的解決方案。在眾多數據庫中,MySQL數據庫算是入門比較簡單、語法比較簡單,同時也比較實用的一個。本文主要介紹瞭Python接入MySQL實現增刪改查的相關內容,下面話不多說,一起來看看詳細的介紹吧
打開數據庫連接,創建數據庫和表
基本語法如下:
execute(query, args=None) # query為字符串類型的sql語句 # args:可選的序列或映射,用於query的參數值。 # 如果args為序列,query中必須使用%s做占位符; # 如果args為映射,query中必須使用%(key)s做占位符
案例:數據庫名learning,表名houses,字段name house_location purchasing_year
import pymysql db = pymysql.connect('localhost', 'root', "password") # 打開數據庫連接,password替換為本機數據庫密碼 cursor = db.cursor() cursor.execute('drop database learning;') cursor.execute('create database learning;') cursor.execute('use learning') sql_create = """create table houses (name VARCHAR(100) NOT NULL, house_location VARCHAR(100) NOT NULL, purchasing_year VARCHAR(100) NOT NULL);""" cursor.execute(sql_create)
插入
# 插入 sql_insert = """insert into houses values(%s,%s,%s);""" cursor.execute(sql_insert,('夢璃','南天門',1995)) # 插入單條數據 cursor.executemany(sql_insert,[('紫英','蜀山',1996),('天河','石沉',1997),('菱紗','溪洞',1998)]) # 插入多條數據
查詢
sql_select = """select * from houses""" # 單條查詢 cursor.execute(sql_select) while 1: result = cursor.fetchone() if result is None: # 取完所有結果 break print(result) # 多條查詢,取3條數據 cursor.execute(sql_select) Result = cursor.fetchmany(3) for res in Result: print(res) # 多條查詢,取所有數據 cursor.execute(sql_select) Result = cursor.fetchall() for res in Result: print(res)
更新
# 更新一條數據 sql_update = """update houses set purchasing_year=2000 where name='菱紗';""" cursor.execute(sql_update) cursor.execute(sql_select) Result = cursor.fetchall() for res in Result: print(res) # 更新多條數據 sql_update = """update houses set purchasing_year=%s where name=%s;""" cursor.executemany(sql_update,[(2018,'夢璃'),(2019,'紫英')]) cursor.execute(sql_select) Result = cursor.fetchall() for res in Result: print(res) # 回滾事務 db.rollback() cursor.execute(sql_select) Result = cursor.fetchall() for res in Result: print(res)
刪除
# 刪除1條數據 sql_delete = """delete from houses where name='夢璃';""" cursor.execute(sql_delete) cursor.execute(sql_select) Result = cursor.fetchall() for res in Result: print(res) # 刪除多條數據 sql_delete = """delete from houses where name=%s;""" cursor.executemany(sql_delete,[('天河'),('紫英')]) cursor.execute(sql_select) Result = cursor.fetchall() for res in Result: print(res)
關閉遊標,關閉數據庫連接
cursor.close() # 關閉遊標 db.commit() db.close() # 關閉數據庫連接 print('sql執行成功')
總結
到此這篇關於Python接入MySQL實現增刪改查的文章就介紹到這瞭,更多相關Python MySQL增刪改查內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Python通過pymysql調用MySQL進行增刪改移查
- Python基礎之操作MySQL數據庫
- python 管理系統實現mysql交互的示例代碼
- python 操作sqlite數據庫的方法
- Python操作PostgreSql數據庫的方法(基本的增刪改查)