如何将xlms结尾的Excel存入到数据库

前两天因要导入一个excel的学校数据,到数据库使用,查询使用了下面两种方法来导入到数据库。并比较优劣,在第二种方法出错的情况下,改用第一种方法,利用转表,成功导入。

第一种方法:

可以先用Excel将该文件转换为csv格式,然后数据库建表,利用新版phpMyAdmin导入数据库。

第二种方法:

在Excel中增加一列,利用Excel公式生成SQL语句,然后将该列复制出来到文本文件txt,再保存为.sql结尾。

例如excel表格中有A、B、C三列数据,希望导入到数据库users表中,对应的字段分别是name,sex,age。

在excel表格中增加一列,利用excel的公式自动生成sql语句,方法如下:

1.增加一列(D列)

2.在第一行的D列,就是D1中输入公式:=CONCATENATE(“insert into users(name,sex,age) values( ‘ “,A1,” ‘,’ “,B1,” ‘,’ “,C1,” ‘);”)

3. 此时D1已经生成了如下的sql语句:insert into users (name,sex,age) values (‘CL’,’男’,’22’);

4.将D1的公式复制到所有行的D列(公式要允许自动运算和追踪单元格,貌似是这个,忘了)

5.此时D列已经生成了所有的sql语句

6.把D列复制到一个纯文本文件中,然后保存成.sql文件,导入到数据库中执行即可

但是发现有一个地方会出现错误,比如名字是英文,英文中常用分号“ ‘ ”,如TOM’s 在生成的语句插入到数据库的时候会出错

insert into users (name,sex,age) values (‘TOM’s’,’男’,’22’);

所以如果数据格式有问题,最好采用第一种方法导入到数据库。

 

Leave a Reply

电子邮件地址不会被公开。 必填项已用*标注

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>