Android SQLite 文件的导入导出

来源:互联网 发布:淘宝店铺购买可以吗 编辑:程序博客网 时间:2024/06/05 12:16

首先,说一下,在导入文件之前需做好的准备工作以避免乱码现象的出现

将test.csv文件以记事本的方式打开,将第一行数据删除,在另存为的下方选择编码方式UTF-8,按照下述步骤即可完成文件的导入问题。


进入sqlite命令

运行cmd命令,然后使用adb shell命令进入Linux命令,使用adb命令的前提是已经配置好了相关的环境变量。进入linux命令后可以用ls命令查看系统文件,然后用cd命令改变目录以致最终进入数据库文件目录,使用sqlite3  test.db就进入了sqlite的命令操作。

具体的操作的实现过程:cmd-adb shell-cd data/data/your.package.name/databases-sqlite3 test.db
之后就是使用sql语言,必须以分号“;”结束

下面正式进入文件导入和导出的操作:
以下是进入sqlite3命令后的一些常用操作及解释

>.databases //显示所有数据库 和 mysql的 show databases;  
>.tables //显示当前数据库的表格 和 mysql 的show tables;  
>.schment tablename;  //显示表格结构 和mysql的 SHOW Create TABLE tbl_name 
>.output c://1.sql  //导出当前数据库的 sql语句 和mysql的 mysqldump 
>.dump 
>.import c://1.sql //导入 //mysql 用source 

=================== 


关于导入 

命令: .import 
sqlite> .import 文件名 表名 

注1: 不要忘了开头的点 
注2: 这条语句不能用分号结束. 非SQL不需要分号结束. 
注3: 需要查看默认的分隔符separator. 必须一致. 如果不一致可能导致sqlite字段分割错误. 
        查看分隔符使用命令  .show , 如果不一致可直接修改, 比如: 
        sqlite>.separator "," 
        将分隔符转为逗号. 
举例1: 
将sdcard文件a.csv中的数据导入表 table_name. (test.csv中字段以逗号分割) 
sqlite> .separator "," 
sqlite> .import  /mnt/sdcard/test.csv  tab_name

sqlite> 

导入结束. 


关于导出 

实现方式: 将输出重定向至文件. 
命令: .output 
sqlite> .output test.txt 

然后输入sql语句, 查询出要导的数据. 查询后,数据不会显示在屏幕上,而直接写入文件. 
结束后,输入 
sqlite> .output stdout 
将输出重定向至屏幕. 
举例2: 
将 tab_xx 中的数据导出到文件test.txt 
sqlite> .output test.txt 
sqlite> select * from table_name; 
sqlite> .output stdout 

导出完毕.


关于文件导入乱码问题可参考:http://blog.csdn.net/johnnycode/article/details/7413111


原创粉丝点击