一般的開發過程中,我們需要使用pycharm來連接數據庫,從而來進行對數據庫的操作,這里主要連接的是mysql數據庫,另外加了使用pandas模塊讀取數據庫的操作,基本的操作如下所示:
- 直接連接數據庫
import pymysql
conn = pymysql.connect(host='localhost',port=3306,db='joker',user='root',password='root')
# 定義一個標志位,用於控制要執行那種操作
flag = 3
# 創建一個cursor(游標)對象,用於執行SQL語句
cursor = conn.cursor(pymysql.cursors.DictCursor)
'''
pymysql.cursors.DictCursor的作用:讓查詢結果以字典的形式展示
查詢結果:{'id': 8, 'name': 'joker', 'age': 24}
'''
# 增
if flag == 0:
# sql = 'insert into student(name,age) values("joker",24)' # 直接將數據填充進去
sql = 'insert into student(name,age) values(%s,%s)' # 使用占位符占位,之后傳參
row = cursor.execute(sql,('joker',24)) # 參數為一個(即新添加一行數據記錄)時使用
# cursor.executemany(sql,[('tom',38),('jack',26)]) # 參數為多個(即新添加多行數據記錄)時使用
print(row)
# 刪
if flag == 1:
sql = 'delete from student where name=%s'
row = cursor.execute(sql,('joker',))
print(row)
# 改
if flag == 2:
# sql = 'update student set age=%s'
sql = 'update student set age=%s where name=%s'
row = cursor.execute(sql,(28,'tom'))
print(row)
# 查
if flag == 3:
sql = 'select * from student'
cursor.execute(sql)
print(cursor.fetchall()) # 查看全部
# cursor.scroll(-3,'relative')
'''
scroll:用於控制查詢開始的位置,類似於控制指針or索引
relative:相對地址,absolute:絕對地址,2表示在各個地址上的偏移量
'''
cursor.scroll(2,'absolute')
print(cursor.fetchmany(144)) # 查看指定個數,個數(參數)可無限大,取值只會取全部值為止
print(cursor.fetchone()) # 查看一個
conn.commit()
cursor.close()
conn.close()
-
使用pandas來讀取數據庫
import pandas as pd import pymysql # 創建連接對象 conn = pymysql.connect(host='localhost',port=3306,user='root',password='cyh4414',db='joker') # 編寫SQL語句 sql = 'select * from student' # 使用pandas進行查詢 data = pd.read_sql(sql=sql,con=conn) print(data)