sqlite 数据库,是一个非常轻量级自包含(lightweight and self-contained)的DBMS,它可移植性好,很容易使用,很小,高效而且可靠。
sqlite嵌入到使用它的应用程序中,它们共用相同的进程空间,而不是单独的一个进程。从外部看,它并不像一个RDBMS,但在进程内部,它却是完整的,自包含的数据库引擎。
嵌入式数据库的一大好处就是在你的程序内部不需要网络配置,也不需要管理。因为客户端和服务器在同一进程空间运行。
sqlite 的数据库权限只依赖于文件系统,没有用户帐户的概念。sqlite 有数据库级锁定,没有网络服务器。它需要占用内存,但其它开销很小,适合用于嵌入式设备,你需要做的仅仅是把它正确的编译到你的程序。sqlite使用起来非常方便,仅仅需要敲入带有sqlite数据库名字的"sqlite3"命令即可。如果文件不存在,则创建一个新的(数据库)文件。然后sqlite3程序将提示你输入sql。敲入sql语句以分号“;”结束,敲回车键之后,sql语句就会执行。例如,创建一个包含一个数据库为“user.db”表“cars”的sqlite数据库。
创建命令:
创建数据库user.db
sqlite3 user.db创建表cars
create table carsl(name varchar(10),years smallint,price float);
查询表
.table
插入数据
insert into cars values('audi',1994,530000.5);insert into cars values('volvo',2001,303478.5);
显示头
.header on
.mode column
查询数据
select * from cars; //查询cars表 中所有数据
sqlite> select * from tbl1 where one='xxx';
删除全部语句
sqlite> delete from cars;
更新语句
sqlite>update cars set name='kaka' where name="mini";
删除语句
sqlite> delete from cars where name="kaka";
sqlite>delete from cars; //删除 cars表 中所有数据
条件语句的应用 "and" "or" "and or"
sqlite> delete from cars where name="volvo" or name="audi";
sqlite> delete from cars where name="volvo" andprice=324200;
sqlite> delete from cars where (name="volvo"orname="audi") and price=324203;
显示结果:
sqlite可以使用8种方式显示查询结果,大大方便了程序对数据的处理,sqlite3程序可以以八种不同的格式显示一个查询的结果:
.mode MODE ?TABLE? Set output mode where MODE is one of:
csv Comma-separated values
column Left-aligned columns. (See .width)
html HTML <table> code
insert sql insert statements for TABLE
line One value per line
list Values delimited by .separator string
tabs Tab-separated values
tcl TCL list elements
使用方法: .mode column (输出格式切换到行模式,如上图)
sqlite3 导入导出数据库
导出数据库
sqlite> .backup main user.sql (备份数据库main,即完成数据库的复制)sqlite> .backup user2.sql (备份默认数据库main)
同时sqlite具有导入/出表,文件,数据库等功能(具体详见 ./help)
参考来源:http://www.cnblogs.com/wdpp/archive/2011/11/30/2386714.html
推荐参考:sqlite官网
原文链接:https://www.f2er.com/sqlite/201324.html