標籤:
接到一個小任務,打算10天之內完成,記錄下自己遇到的每個問題和解決的辦法。
需求:資料庫1的記錄所在的表名是按照主鍵key 求hash(4)所得,將它轉移到資料庫2中,資料庫2的表名是按照主鍵key求hash(5)所得。
痛點分析:
1、介面實現
2、匯入參數
3、hash的運用和計算
4、記錄的轉移和操作;
day1
安裝好MySQL-python
Python操作MySQL基礎
#coding=utf-8import MySQLdbconn= MySQLdb.connect( host=‘192.168.1.90‘, port = 3306, user=‘QSuserWrite‘, passwd=‘qs123456‘, db =‘shiji‘, )cur = conn.cursor()#建立資料表#cur.execute("create table student(id int ,name varchar(20),class varchar(30),age varchar(10))")#插入一條資料#cur.execute("insert into student values(‘2‘,‘Tom‘,‘3 year 2 class‘,‘9‘)")#cur.execute("create table student(id int,name varchar(20),class varchar(20),age int)")#cur.execute("Alter tudent add primary key(id)")sqlinsert="insert into student values(%s,%s,%s,%s)"cur.executemany(sqlinsert,[ (‘8‘,‘john‘,‘1 year 2 class‘,‘10‘), (‘9‘,‘john‘,‘1 year 2 class‘,‘10‘), (‘10‘,‘john‘,‘1 year 2 class‘,‘10‘), (‘11‘,‘john‘,‘1 year 2 class‘,‘10‘), ])#修改查詢條件的資料#cur.execute("update student set class=‘3 year 1 class‘ where name = ‘Tom‘")#刪除查詢條件的資料#cur.execute("delete from student where age=‘9‘")cur.close()conn.commit()conn.close()
1、Python操作是先建立一個conn的串連;
2、cur = conn.cursor()
通過擷取到的資料庫連接conn下的cursor()方法來建立遊標。
3、cur.execute("create table student(id int ,name varchar(20),class varchar(30),age varchar(10))")
通過遊標cur 操作execute()方法可以寫入純sql語句。通過execute()方法中寫如sql語句來對資料進行操作。
4、可以設定sqlinsert="insert into student values(%s,%s,%s,%s)",從而節省代碼量;
5、插入多條記錄時,
cur.executemany(sqlinsert,[ (‘8‘,‘john‘,‘1 year 2 class‘,‘10‘), (‘9‘,‘john‘,‘1 year 2 class‘,‘10‘), (‘10‘,‘john‘,‘1 year 2 class‘,‘10‘), (‘11‘,‘john‘,‘1 year 2 class‘,‘10‘), ])
方法用executemany,注意sqlinsert後要加中括弧【】,每條記錄要用逗號隔開;
關於資料庫的記錄調整記錄。Python實現