如何设置Android手机的sqlite3命令环境

 

1、在PC环境下启动一个模拟器(不是手机)

 2、查看模拟器 /systen/xbin是否有sqlite3命令

adb shell

 cd /system/xbin

 ls

3、把模拟器 /system/xbin/sqlite3命令文件从模拟器拷到PC上

adb pull /system/xbin/sqlite3 e:/eclipse

4、关闭模拟器,把Android手机连接到PC

5、获取Android手机 /system 文件夹的读取权限

adb shell  # mout -o remout, rw -t yaffs2 /dev/block/mtdblock3 /system(根据自己的设备网上很多人的设备是这个)

6、把PC上的e:/eclipse/sqlite3文件拷到Android手机的/system/xbin/目录下

adb    push    e:/sqlite3      /system/xbin

若是提示permission denial 

adb shell

chmod 777 system/

cd system

chmod 777  xbin 

然后执行上面的 push

若是还是不行就直接 到eclipse DDMS   filter explore 下面   /system/xbin

把所用的数据直接从电脑上拖到 /system/xbin 下面

7、修改Android真机/system/xbin/sqlite3命令的权限

adb shell

 chmod 4755 /system/xbin/sqlite3

 

然后输入sqlite3

进入到sqlite就可以了。

 

 

若是能执行则说明数据库安装好了

8

android 数据库是建立在

/data/data/项目com.example.name/databases/数据库名

进入目录下面打开数据库

sqlite3 database_name.db .

若是打不开则把数据库的权限改成777755就可以了。

Chmod 777 database_name.

若是要进行写操作则必须把所有目录的写权限设置了

    /data/data/项目com.example.name/databases/数据库名人

数据库前面所有的权限都改了

chmod 777 data

 cd data

chmod 777 data

cd data

chmod 777 项目名称

 

 

然后就可以执行sqlite3 数据库名就可以了。


 

9帮助 .help 获得帮助

退出数据库.quit 

 

下面是补充些问题

首先 adb shell 

Mount 

然后会看到下面一行

 

上面在windows使用的 adb #  mount -o ..............

 

在adb shell 下面可以使用下面命令

Mount -r -w   remount -t rfs /dev/block/sti9 /system

rfs  与 sti9 都是根据上面的一个图看到的。 根据你自己的设备写

最后

  Mount -r -o  remount -t rfs /dev/block/sti9 /system

 重新remount一下 为了安全。。。

 

 

 

常用命令;

.databases  查看所有数据库

.tables  查看所有表

.dump  查看所有插入语句

.schame table_name  查看表结构

查了半天sqlite的手册,没找到怎么修改列名。最后用了一个很笨的方法。

这里我要把post的tbl重命名为tb_l。

首先重命名post表。

ALTER TABLE post RENAME TO tmp_post;
在重新创建post表。

?
1
2
3
4
CREATE TABLE post(
id integer primary key autoincrement,
tb_l varchar (128) not null
);
把tmp_post的数据导入post,并删除tmp_post;

insert into post (tb_l) select tbl from tmp_post;
drop table tmp_post;
如果原表tmp_post和新创建的标post列数一致,并且是一一对应的话,可以用一下语句导入。

insert into post select * from tmp_talbe;

--------------------------------------



使用Sqliteman修改表时,遇到一个问题,每当添加或修改列信息时,作为主键的信息就会丢失,所以只能自己写Sql执行了。示例:

ALTER TABLE " store_productcategory "   ADD COLUMN " DisplayOrder " INT DEFAULT( 0 )

SQLite的最大特点是你可以吧各种类型的数据保存到任何字段中,而不用关心字段的数据类型。主键除外。主键只能保存64位整数。既然类型不太明确。我想你存的类型是什么就应该是什么类型,不会报错的。也就是无类型。

* SQLite支持表名的修改和增加列
     * 1,修改表名:ALTER TABLE oldtablename RENAME TO newtablename;
     * 2,增加列:ALTER TABLE tablename ADD COLUMN fieldname  fieldtype;

更新数据  update mytab set columon ='date' where id=10;

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值