1. 程式人生 > 實用技巧 >操作mysql(圖形介面) 建庫建表

操作mysql(圖形介面) 建庫建表

連線Mysql建庫建表 連線伺服器中mysql! 資訊: IP: 39.98.39.173 使用者名稱: root 密碼: root 1. 圖形介面工具: navicate

2. 建庫

3. 建表 分析 # 學生表students # 學生物件包含屬性(id,姓名,性別,年齡,生日,手機號,地址...) #根據業務需求隨意擴充套件! # 對應列!

Python操作資料庫

python操作資料庫流程 下載mysql驅動模組(pymysql) 引入模組 建連線(建立和資料庫連線) 執行sql語句 非查詢:增加,刪,修改 查詢:select 處理結果 釋放資源 關連線 關遊標 驅動介紹 python操作mysql驅動/第三方模組: MySQLdb PyMysql pymysql: 支援2.x 支援3.x mysqldb: 只支援3.x
#
安裝模組 pip install pymysql

增刪改 SQL
# 增加 
insert into 表名(列1,列2,....) values(值1,值2,...)
# 刪除 
delete from 表名 ; # 刪除表中所有資料! 
delete from 表名 where 條件;

# 修改 
update 表名 set 列1=值1,列2=值2,....; #不加條件,修改所有列!~
 update 表名 set 列1=值1,列2=值2,....where 條件;

select * from students where sex =''; 
insert into students(name,sex,age,birthday,phone,addr) 
values(
'劉帥','',20,now(),'17600950805','山西') ; update students set sex='' where name ='劉帥' delete from students where name ='劉晒

python實現非查詢 非查詢:步驟一樣的! 區別: sql語句不同, 引數個數不同!
def my_execute(sql,params): 
    '''非查詢通用功能! sql語句, 引數列表''' 
 # 2.連線
    conn =
pymysql.connect(host='39.98.39.173',port=13306,user='
root',passwd='root',db='1909C2',c harset='utf8') print(conn) # 3. 獲取遊標 cur = conn.cursor() # 4. 執行sql num = cur.execute(sql,params) #print(f'影響行數:{num}') conn.commit() # 必須手動提交到資料庫! # 5. 釋放資源 cur.close() conn.close() # 返回影響行數! return num

if __name__ == '__main__':      # 通用   sql ='insert into students(name,sex,age,birthday,phone,addr) values(%s,%s,%s,%s,%s,%s)'   params=('王五','女',39,'2020-11-03','17600950805','山西')   if my_execute(sql,params)>0:     print('資料庫操作成功!')   else:     print('資料庫操作失敗!') 引數如何傳遞
sql ='insert into students(name,sex,age,birthday,phone,addr)

values(%s,%s,%s,%s,%s,%s)'
# 格式:一行資料就是一個元組! params=('王五','女',39,'2020-11-03','17600950805','山西') num = cur.execute(sql,params)
批量執行非查詢
sql ='insert into students(name,sex,age,birthday,phone,addr)
values(%s,%s,%s,%s,%s,%s)' # 格式:一行資料就是一個元組! params=[('王五1','女',39,'2020-11-03','17600950805','山西'),('王五2','女',39,'2020-11- 03','17600950805','山西')] num = cur.executemany(sql,params) # 結果大於1的

  

核心物件 連線物件: conn= pymysql.connect(host='IP地址',port=13306,user='使用者名稱',passwd='密 碼',db='資料庫名',charset='utf) conn.close() #關閉 cur= conn.cursor() 建立遊標 遊標 Cursor 操作資料庫依靠遊標! num = cur.execute(sql,引數) 執行非查詢,返回影響的行數! num=cur.executemangy(sql,[(),(),..]) 批量執行非查詢,返回影響行數! cur.close() cur.fetchone() 抓取1條,,返回元組或None cur.fetchall() 抓取所有 cur.fetchmany(大小) 指定抓取大小 cur.next() 遊標下移! 查詢
import pymysql
def get_one():   # 1. 連線   conn = pymysql.connect(host='39.98.39.173', port=13306, user='root', passwd='root', db='1909C2', charset='utf8')   # 2. 開啟遊標   cur = conn.cursor()   # 3. 執行   sql ='select * from students where sex = %s'   cur.execute(sql,('女'))   #result = cur.fetchone() # 返回一個元組() 預設找第1個!   result = cur.fetchall() # 返回多個元祖 ((),(),(),...)   print(result)   for stu in result:     print(f'id:{stu[0]},名字:{stu[1]}')   # 4.關閉資源   cur.close()   conn.close() if __name__ == '__main__':   get_one()