pymysql 於pycharm中操作mysql


pymysql是外部模塊需引入

 

連接mysql數據庫中的某個庫

import pymysql #導入pymysql模塊

db=pymysql.connect(host='127.0.0.1',user='root',password='123',database='class')
# 獲取庫 .connect 建立連接 host=數據庫ip user=用戶名 password=密碼 database=數據庫

 

創建表

import pymysql #導入pymysql模塊

db=pymysql.connect(host='127.0.0.1',user='root',password='123',database='class')
# 獲取庫 .connect 建立連接 host=數據庫ip user=用戶名 password=密碼 database=數據庫

cur=db.cursor()
# 使用cursor()方法獲取 操作游標
# 游標:游標的設計是一種數據緩沖區的思想,用來存放sql語句執行結果。
# 游標是在先從數據表中檢索除數據之后才能繼續靈活操作的技術。類似於指針,指向數據結構堆棧中的指針,用來pop出所指向的數據,並且只能每次取一個。

cur.execute('drop table if exists employee')
# 使用execute()方法執行sql語句 刪除表employee 如果它存在

sql=input('>>>')
# 寫入創建表的sql語句

cur.execute(sql)
# 使用execute()方法執行sql語句

db.close()
# 關閉數據庫連接

 

修改(增/刪/改)表中數據

import pymysql #導入pymysql模塊

db=pymysql.connect(host='127.0.0.1',user='root',password='123',database='class')
# 獲取庫 .connect 建立連接 host=數據庫ip user=用戶名 password=密碼 database=數據庫
cur=db.cursor(cursor=pymysql.cursors.DictCursor)
# 使用cursor()方法獲取 操作游標 
# cursor=pymysql.cursors.DictCursor 是將獲取信息以字典形式存儲
# 游標:游標的設計是一種數據緩沖區的思想,用來存放sql語句執行結果。 # 游標是在先從數據表中檢索除數據之后才能繼續靈活操作的技術。類似於指針,指向數據結構堆棧中的指針,用來pop出所指向的數據,並且只能每次取一個。 sql=input('>>>') # 寫入sql語句 try: cur.execute(sql) # 執行sql語句並存在於游標 db.commit() # 提交到數據庫執行 except: db.rollback() # 若發生錯誤則回滾 db.close() # 關閉數據庫連接

 

查詢表中數據

獲取所有 fetchall( )    ps:(因占用內存 故不常用) 

import pymysql #導入pymysql模塊

db=pymysql.connect(host='127.0.0.1',user='root',password='123',database='class')
# 獲取庫 .connect 建立連接 host=數據庫ip user=用戶名 password=密碼 database=數據庫
cur=db.cursor(cursor=pymysql.cursors.DictCursor)
# 使用cursor()方法獲取 操作游標
# 游標:游標的設計是一種數據緩沖區的思想,用來存放sql語句執行結果。
# 游標是在先從數據表中檢索除數據之后才能繼續靈活操作的技術。類似於指針,指向數據結構堆棧中的指針,用來pop出所指向的數據,並且只能每次取一個。

sql=input('>>>')
# 寫入創建表的sql語句

try:
    cur.execute(sql)
    # 執行sql語句並存在於游標
    results=cur.fetchall()
    # 獲取所有的記錄列表
    for row in results:
        nid=row[0]
        age=row[1]
        sex=row[2]
        print(f'id={nid},age={age},sex={sex}')
except:
    print('Error:unable to fetch data')
db.close()
# 關閉數據庫連接

 

獲取下一條信息 fetchone( )

import pymysql #導入pymysql模塊

db=pymysql.connect(host='127.0.0.1',user='root',password='123',database='class')
# 獲取庫 .connect 建立連接 host=數據庫ip user=用戶名 password=密碼 database=數據庫
cur=db.cursor(cursor=pymysql.cursors.DictCursor)
# 使用cursor()方法獲取 操作游標
# 游標:游標的設計是一種數據緩沖區的思想,用來存放sql語句執行結果。
# 游標是在先從數據表中檢索除數據之后才能繼續靈活操作的技術。類似於指針,指向數據結構堆棧中的指針,用來pop出所指向的數據,並且只能每次取一個。

sql=input('>>>')
# 寫入創建表的sql語句

try:
    cur.execute(sql)
    # 執行sql語句並存在於游標

    results=cur.fetchone()
    # 獲取一條記錄
    print(results)
except:
    print('Error:unable to fetch data')
db.close()
# 關閉數據庫連接

 

獲取多條數據 fetchmany( )  ps:(常用於分頁)

import pymysql #導入pymysql模塊

db=pymysql.connect(host='127.0.0.1',user='root',password='123',database='class')
# 獲取庫 .connect 建立連接 host=數據庫ip user=用戶名 password=密碼 database=數據庫
cur=db.cursor(cursor=pymysql.cursors.DictCursor)
# 使用cursor()方法獲取 操作游標
# 游標:游標的設計是一種數據緩沖區的思想,用來存放sql語句執行結果。
# 游標是在先從數據表中檢索除數據之后才能繼續靈活操作的技術。類似於指針,指向數據結構堆棧中的指針,用來pop出所指向的數據,並且只能每次取一個。

sql=input('>>>')
# 寫入創建表的sql語句

# cur.execute(sql)
# # 使用execute()方法執行sql語句

try:
    cur.execute(sql)
    # 執行sql語句並存在於游標

    results=cur.fetchmany(int)
    # 獲取int條記錄 超過數據總量無影響
    print(results)

except:
    print('Error:unable to fetch data')

db.close()
# 關閉數據庫連接

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM