进入mysql之后,
create database shude;
use shude;
发现在upload时,总有权限问题,尝试
show global variables like 'local_infile';
set global local_infile=true;
没有什么改善,但是也没有把键值改回来。
后来发现secure的路径是一个隐藏地址,通过
show variables like "secure_file_prive"
找到了,把文件放入路径终于能导入了。然后开始创建table,
create table ib_info (
id varchar(5),
school varchar(20),
grade varchar(6),
class_type varchar(5),
class_name varchar(10),
manager_name varchar(20),
student_name varchar(20),
student_no varchar(15),
student_email varchar(40),
parent_name varchar(20),
parent_no varchar(15),
parent_email varchar(40));
几个坑。id还是用char,int的兼容性太差,很不好用。name最好用20的char,学生和家长经常是全拼,甚至英文名。email最好用40,不知道谁用这么长的邮箱。
数据有点脏,里面有些人名是"人名/n",这个要手动修改。有些在800多排打了一串没用的东西,而且中间有很多空字符串行。这些都用python去修改,而且也更容易发现。
python读取后,再存回会有乱码,可以encoding='utf_8_sig'。数据洗干净后,即可
load data infile 'C:/ProgramData/MySQL/MySQL Server 8.0/Uploads/IB_main.csv'
into table ib_info fields terminated by ',';
不需要特别对待第一行或者title,这些都可以在python的预处理中就弄完。
网友评论