SQLite3使用小结

前不久研究了一下sqlite3,这是一款轻量级数据库,大小才275KB。良好的跨平台性,以及在嵌入式领域被广泛的应用

   界面和MYSQL一样,都是CMD界面,但不是在SQLite.exe中创建数据库:

1.从网站http://www.sqlite.org/download.html下载了sqlite3 ,解压后放在C:\sqlite.里面有三个文件,分别是:sqlite3.def,sqlite3.dll,sqlite3.exe。

1).sqlite3.def: 用于编译生成相应的LIB文件

2).sqlite3.dll:提供sqlite所需的动态链接库文件。

3).sqlit3e.exe:执行文件,用于执行数据库操作

2、SQLite3使用: 
1).将sqlite3.exe文件解压出来放在任何位置(如:C:\sqlite\sqlite3.exe);
2).在CMD下进入到C:\sqlite下(cd \       cd sqlite) 
3).在CMD命令提示符下输入sqlite3.exe test.db(test.db是数据库名)回车,执行完后,命令提示符自动跳转到"SQLITE>"状态。
注意:这时test.db数据库确实已经创建好了但是还是个临时的,要等执行完SQL命令后才能在sqlite3.exe所在目录下看到数据库文件,如: 创建或关闭sqlite3
4).create table user(name text); 这时可以看到C:\sqlite下多了一个文件test.db,这就是创建的数据库。
5).如果下次还要使用此数据库时仍然使用sqlite3.exe test.db即可进入此数据库 
7).其它问题可以查看DOC和使用.help命令查看。

3. 示例:

1).help帮助命令

C:\sqlite>sqlite3.exe test.db   -->创建一个数据库文件my.db

sqlite3>.help

sqlite3>.width [column1_max_width] [column2_max_width] .....

sqlite3>.output [filename] --->output the result to the special file

sqlite3>..tables,可以看数据库中的所有表; 
sqlite3>.indices,可以列出一个指定表的所有索引; 
sqlite3>.schema,创建表和索引时候的create语句,也可以在后面指明表名; 
sqlite3>.databases,查看当前打开的所有数据库,通常是一个main一个tem

sqlite3>.dump;  导出的SQL语句,可以放到ORACLE中去执行;

sqlite3>.explain:  就是查询一条SQL语句最终解析出来的执行计划,对SQL语句调优很有用;

sqlite3>.timeout: 默认超时时间是0,查询一张表或索引,发现表或索引被锁定,就立刻返回,不等待;

4.局限性:

1)sqlite只适合对单一文件进行读并发操作,不适合对其进行并发写事务。事务的局限性,使其应用受限,通常用于处理小型的事务。

2)不支持外键约束; 
3)对触发器的支持不是很完整; 
4)对ALTER TABLE的支持不是很完整; 
5)不支持嵌入式事务; 
6)不支持RIGHT和FULL OUTER JOIN. 
7)不支持视图的写更新操作; 
8)不支持GRANT和REVOKE;

9)不支持存储过程

10)文件锁:sqlite对事务的并发控制是通过本地文件锁低级原语来进行的。若有部分数据残存于网络分区中,文件锁将失效。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值