sqlite mysql excel_sqlite expert导入excel表格 (包括使用问题、以及把 一个表的数据插入到另一个表中)...

标签:

一、sqlite导入excel

1、打开要导入的excel --- 另存为(2007版点击左上角OFFICE图标即可找到) --- 保存类型:CSV类型

(提示什么不兼容什么的,一律点确定。)

2ef879423d672776600e4e8a6086fd8b.png

2、打开sqlite expert ,选择建好的数据库文件(或者是导入的已存在的db文件,或者是自己新建一个.db数据库文件).

右击文件名---选择最后一个import text file(CSV,TSV)

9164a9bc6d0d5ba0a8a19caaaaf5547f.png

3、(如果没有建过和这个excel名相同的表)右边Destination选择第一项new table新建这个表,名字为xxx 。

如果选第二项,先确保你的数据库中有其他表(或者自己新建),代表你可以将excel表中数据插入到已有的表中。(请确保列名,即字段名最好一样。)

当然你也可以在右上方的那个"..."图标,浏览找到你要添加的csv文件.

0b045dd57ed5ee000f6dccb3c916ad51.png

4、最后点击左下角start即可开始导入数据. 完成后,左边会出现刚才新建的表xxx,点击屏幕中间靠右的DATA栏,即可看到导入的数据。(下图代表提示导入了多少行用了多久)

f7e1483ae7ec673d5524c83a2d398871.png

二、可能会报的错误。

情况一: field is missing (即:字段名丢失)

原因是你的excel表格第一行加了字段(即列名),如什么age name type或者其他中文.

我的解决方法:

删掉CSV第一行的所有字段,在sqlite expert里直接用SQL语句新建字段,点击SQL,输入以下语句来建立字段,按Execute SQ按钮。(代表建立一个表Persons ,有4个字段名,类型,可输入字符数)可见想要的字段已经建立成功,因此只要按照第一个步骤导入CVS数据到表中即可。

f44d707b5f1d33ed821e7611debf723e.png

f1a479c741dae1b6d224d78b5f56d599.png

情况二:数据太多会导不全 (天生bug)

由于有8W多条数据,每次只能导1W多条,还找不到原因。从早上弄到下午四点多,真是很恼火。记得一个同事半个月前跟我说过要分几次导,我才想起来。在这里要真心#感谢同事李胜# ,帮了我大忙。

我的解决方法:

第一次导也许只有1W多条数据,然后你把你的CSV文件打开,把已经导进的数据删除,保存CSV文件,继续用sqlite expert进行导入,下一次可能是8k条,可能是1W条,重复你的步骤,直至完全导入到表中。(即CSV文件不要加第一行字段,直接导到已存在的表中,导入一次,查看DATA栏导了多少数据。然后把CSV中导入过的删掉继续重复.)

三、(同一个.db数据库)把一个表的数据,插入到另一个表中。

按照上面的方法,把你的excel另存为CSV文件(见第一个步骤)

直接在sqlite expert的SQL模块中添加下面两行SQL语句(即将表B的数据添加到表A后面)

//语句

insert into  表A

select * from 表B

//语句

需要注意的是,这里的作用主要是适用于表B(没有第一行字段),直接添加到表A。(因此有了字段,成为了插入表A中的数据)

而且如果因为字段名不一样,插入数据会报错。(比如把[123]表的数据插入到Persons表)

d92857575afa6347e0fa4c1f2758d967.png

个人经验所谈,希望能帮助大家解决同样的问题。

### Writer :JiaYi  < thankyou! > ###

标签:

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值