SQLite是关系型数据库,是一个进程内由C语音开发的嵌入式库,实现了自给自足、无服务器、零配置(无需在系统中配置)、事务性的 SQL 数据库引擎,具有小型、 快速、 自包含、 高可靠、 功能齐全等特点,是世界上使用最广泛的数据库引擎。
SQLite 数据库常用命令:
1、创建或打开数据库:
sqlite3 /…/xxx.db 或者 .open /…/xxx.db;
注意:执行.open命令后,数据库文件会被直接创建出来,不需要再创建数据库对象。
2、创建表:CREATE TABLE 表名();
CREATE TABLE 表名 (
列1名称 列类型 列约束(以空格隔开的一个或多个列约束),
列2名称 列类型 列约束(以空格隔开的一个或多个列约束),
...
);
举例:
create table table_name(field1 type1, field2 type1, ...);
说明:table_name是要创建数据表名称,fieldx是数据表内字段名称,typex则是字段类型。
3、创建临时表:
CREATE TEMP TABLE 表名();
说明:临时表只对当前数据库连接有效。
4、查看指定表的创建语句:.schema 表名
5、查看数据表信息:.table
6、增加数据记录:
insert into table_name(field1, field2, ...) values(val1, val2, ...);
说明:fieldx是数据表内字段名称,valx为需要存入字段的值。
7、删除数据记录:
delete from table_name [where expression];
说明:不加判断条件则清空表所有数据记录。
8、修改数据记录:
update table_name set field1=val1, field2=val2 where expression;
说明:fieldx是数据表内字段名称,valx为需要存入字段的值,where是sql语句中用于条件判断的命令,expression为判断表达式。
9、查询数据记录:
select columns from table_name [where expression];
(1)查询数据表中所有数据:select * from table_name;
(2)限制输出数据记录数量:select * from table_name limit val;
(3)升序输出数据记录:select * from table_name order by field asc;
(4)降序输出数据记录:select * from table_name order by field desc;
(5)条件查询:
select * from table_name where expression;
select * from table_name where field in ('val1', 'val2', 'val3');
select * from table_name where field between val1 and val2;
(6)查询数据记录条数:
select count (*) from table_name;
(7)区分列数据:
select distinct field from table_name;
说明:distinct去掉重复项,将列中各字段值单个列出。
10、退出控制台:.quit 或 .exit