Android 数据库操作 以及命令行上操作sqlite
android上有关 数据库增删改查的例子嗷嗷多,不啰嗦。亲手搞个例子放上来
下面讲如何在命令行上查询在由代码创建的数据库表和相应记录(代码工程详见附件)。
数据库存放在 /data/data/<package_name>/databases当中
背景:1 程序已经建立了一个com.db的包
2 SDK路径: D:\>android-sdk_r06-windows\android-sdk-windows\tools
首先,CMD--》目录到android SDK目录下的tools文件夹上
我的尝试如下:
cd android-sdk_r06-windows\android-sdk-windows\tools
adb shell
cd data
cd data
cd com.db
cd databases
sqlite3 Hello.db
然后输入.tables---查看所有的表
SQLite不支持有损修改,即你可以增加某一列,介你却不能删除某一列,或者修改某一列的名字。要解决这种问题,方案是使用事务来做,先备份表及数据,然后再删掉原表,重新建表,再导入数据。
例子如下:
begin transaction;
create temporary table test_backup(key,desc,temp);
insert into test_backup select key,desc,temp from test;
drop table test;
create table test(key integer primary key,desc text null);
insert into test select key,desc,temp from test_backup;
[color=red]!!!!.....一定要检查一下你的数据是否已经完整无误了才提交,否则就应该使用rollback了[size=small][/color][/size]
commit;
常用命令:
显示所有的表:
.tables
查看表结构:
.schema table_name
查看系统自带的联系人的表:
sqlite3 /data/data/com.android.providers.contacts/databases/contacts2.db