接到一个小任务,打算10天之内完成,记录下自己遇到的每个问题和解决的办法。
需求:数据库1的记录所在的表名是按照主键key 求hash(4)所得,将它转移到数据库2中,数据库2的表名是按照主键key求hash(5)所得。
难点分析:
1、界面实现
2、导入参数
3、hash的运用和计算
4、记录的转移和操作;
day1
安装好MySQL-python
Python操作MySQL基础
#coding=utf-8 import MySQLdb conn= 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后要加中括号【】,每条记录要用逗号隔开;
时间: 2024-10-05 21:02:09