测试

0 0 0

wangxishi

2020-09-08

在python中怎么使用my sql

这是一个小流程: 这里给你举个例子参考一下:

原始数据在txt中 处理有很多不便 想要把它们插入到sql中去

代码如下:

连接数据库:

import MySQLdbconn=MySQLdb.connect(host="localhost",user="root",passwd="root",db="mydatabase",charset="utf8")cursor = conn.cursor()if conn:print("data base has already connected")

打开文件获取一行数据

f = open("data_first.csv","r")f.readline()#因为txt中第一行一般为列名,因此用readline先将这行数据跳过

拼接insert语句

我要插入的数据表为MyData,数据列为21列,第一列为id列。数据表已经在sql中存在,且txt中用逗号隔开的数据列也为21列

insertcolumn = "id "s = "'%s'"for i in range(1,20,1):s = s + ",'%s'"insertcolumn = "Insert into MyData "+"values("+s+")"


循环插入

这一部分需要注意的是,用readline读取的时候,会把每行末尾的\n也读取进去,可以用strip对其进行处理

while True:line = f.readline().strip('\n')#按行读取且处理掉换行符,效果:"\'\n'变为了''if line:#print(line.split(','))list = line.split(',')#数据以逗号分隔,因此用split(',')#print(len(list))#获取长度insertcolumn_full = insertcolumn%tuple(list)#%s的字符串格式化传参只支持元组和字典,不支持列表,因此这里需要用tuple(list)将list转为元组#print(insertcolumn_full)cursor.execute(insertcolumn_full)#运行conn.commit()#事务提交,这句一定要有!否则即使python不报错 数据也无法成功插入sqlelse:break

关闭

cursor.close()
conn.close()
f.close()


1 0 0

wangxishi

2020-09-08

在python中怎么使用my sql

666

0 0 0

小朱520

2020-09-08

数据清洗的一些小技巧

1599466777_982532.png

0 0 0

wangxishi

2020-09-07

python统计每列缺失值

3156257312-56761eb64bbfc.png

0 0 0

wangxishi

2020-09-07

python统计每列缺失值