2、先用select查询数据是否重复,再决定是否要插入此条数据,实现起来比较麻烦,特别是字段较多时,效率方面未对比测试。
3、使用语句insert or ignore into table (fields) values (values)或replace into table (fields) values (values)此法比较简洁。需要注意的是,当表有一个PRIMARY KEY或UNIQUE索引才有意义。
具体的 *** 作步骤如下:首先,用Access打开mdb文件。导出成txt文件,由于本人的SQLite是在linux下使用,所以编码要改成Unicode,分隔符用逗号分割(逗号分割是为了后期导入到SQLite中)第二步,将文件导入到linux系统下通过终端sqlite3abc.dbSQLiteversion3.6.22Enter".help"forinstructionsEnterSQLstatementsterminatedwitha""sqlite进入一个已经建好的数据库中sqliteCREATETABLEeee(idINTEGERPRIMARYKEY,numberNUMERIC,codeNUMERIC,cityTEXT,citytypeTEXT)创建一个表,这个表的字段和数据类型要和txt文件中的数据和数据类型相对应。sqlite.separator","//设置分割符为逗号,和之前导出设置的分隔符保持一致sqlite.importlist.txteee//将list.txt上的内容导入到表eee中到此,已成功地将批量数据插入到SQLite中了。方法如下:
以windows系统为例,linux下命令是一样的。
1.安装sqlite工具包
首先要安装有sqlite工具包,怎么判断安装了呢?一个简单的方法就是,在命令行里,敲sqlite3,出现下面信息:
则说明安装了。如果没有安装,可以百度一下。
2.打开一个数据库
在命令行里敲入:sqlite3 数据库,例如:sqlite3 test.db:
如果不往数据库里面添加任何的表,这个数据库等于没有建立,不会在硬盘上产生任何文件,如果数据库已经存在,则会打开这个数据库。如上图,数据库test.db就成功打开了。
3.更改分隔符
如图:
默认的分割符号是|,更改命令是:.separator 分隔符,回车。
4.导入数据
命令:.import 文件名 表名,比如.import G:/data/temp.txt student。
这里要说明的是,数据库的字符编码一般默认是UTF-8,如果数据库的中文字符是乱码,则在编辑好的txt文件用UE转换成UTF-8,再导入即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)