偏向Sql语句参考:
http://blog.sina.com.cn/s/blog_74dfa9f401017s69.html
http://blog.csdn.net/sphone89/article/details/9300797
http://mp.weixin.qq.com/s?__biz=MjM5NzM0MjcyMQ==&mid=401553977&idx=2&sn=4bfa8308aab91d13b5e2cb87fd00983c&3rd=MzA3MDU4NTYzMw==&scene=6#rd
http://mp.weixin.qq.com/s?__biz=MjM5NzM0MjcyMQ==&mid=401553977&idx=2&sn=4bfa8308aab91d13b5e2cb87fd00983c&3rd=MzA3MDU4NTYzMw==&scene=6#rd
一下操作是在命令行客户端的进行的,其他客户端可能有所不同。
所有sql指令都是以分号(;)结尾,两个减号(--)则表示注释
命令如果不产生歧义,可以不必完整输入。
列出当前显示格式的配置
sqlite>.show
创建数据库
$sqlite3 ex1
显示数据库
sqlite>.database 显示当前打开的数据库文件
创建表
sqlite> create table tbl1(name varchar(10), age integer);
sqlite> create studen_table(Stu_no interger PRIMARY KEY, Name text NOT NULL, Id interger UNIQUE, Age interger CHECK(Age>6), School text DEFAULT ‘xx小学);
显示数据库中得表
sqlite>.tables
查看表的结构
sqlite> .schema <table_name>
删除表
sqlite> drop table <table_name>
增:
sqlite> insert into table01 values(‘Lucy‘, 20);
sqlite> insert into table_name(field1, field2, ...) values(val1, val2, ...);
删:
sqlite> delete from table_name [where expression];
sqlite> delete from student_info where stu_no=0001;
查:
sqlite> select * form table01;
改:
sqlite> update <table_name> set <f1=value1>, <f2=value2>… where <expression>;
sqlite> update table_name set field1=val1, field2=val2 where expression;
改变输出格式
sqlite> .mode list|column|insert|line|tabs|tcl|csv
sqlite3程序可以以八种不同的格式显示一个查询的结果:"csv", "列", "html", "插入", "行", "制表"和"tcl"。你可以用".mode"点命令在这些输出格式之间切换。
sqlite> .mode list
改变输出分界符
sqlite>.separator ", “
输出 HTML 表格
$sqlite3 -html film.db "select * from film;"
另外一个有用的输出模式是"insert"。在插入模式下,被子格式化为看起来像SQL INSERT语句的样式。你可以用插入模式来产生文件(便于)以后用于不同数据库的输入。
当指定插入模式时,你必须给定一个特定参数就是要插入的表名。例如:
sqlite> .mode insert new_table
调整列宽
用“.width”命令来调整列宽。 设置第一列宽为12第二列宽为6。其它的列宽不变。
sqlite> .width 12 6
输出表头字段名
sqlite>.headers on
改变命令行重定向
sqlite>.output myTable.sql
sqlite>.output stdout
数据库档案拷贝
$ echo ‘.dump‘ | sqlite3 ex1 | gzip -c >ex1.dump.gz
它产生一个一个名为ex1.dump.gz的文件,它包含了你以后或在其它机器上重构数据库的所有的信息。
要重构数据库,只须敲入
$ zcat ex1.dump.gz | sqlite3 ex2
导出SQLite数据库到其他数据库
$ createdb ex2
$ sqlite3 ex1 .dump | psql ex2
读取并执行外部SQL语句
sqlite>.read FILENAME
查询时用指定的串代替输出的NULL串
sqlite>.nullvalue STRING //默认为.nullvalue ‘‘
备份还原数据库
- 备份数据库
--在当前连接的main数据库中创建一个数据表,之后再通过.backup命令将main数据库备份到D:/mydb.db文件中。
sqlite> CREATE TABLE mytable (first_col integer);
sqlite> .backup ‘D:/mydb.db‘
sqlite> .exit
- 还原数据库
--通过在命令行窗口下执行sqlite3.exe以重新建立和SQLite的连接。
--从备份文件D:/mydb.db中恢复数据到当前连接的main数据库中,再通过.tables命令可以看到mytable表。
sqlite> .restore ‘D:/mydb.db‘
sqlite> .tables
mytable
修改字段
SQLite 仅仅支持 ALTER TABLE 语句的一部分功能
我们可以用 ALTER TABLE 语句来更改一个表的名字
也可向表中增加一个字段(列)
但是我们不能删除一个已经存在的字段
或者更改一个已经存在的字段的名称、数据类型、限定符等等。
改变表名
ALTER TABLE 旧表名 RENAME TO 新表名
增加列
ALTER TABLE 表名 ADD COLUMN 列名 数据类型
时间函数
数学函数
比较函数
字符处理函数