官网 SQLite是一款轻型的数据库,是关系型数据库(RDBMS)管理系统,它包含在一个相对小的C库中。目前在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix/Android/IOS等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快。
Sqlite命令分类:
(DDL)数据定义语言:
| CMD | Description |
|---|---|
| CREATE | 创建一个新的表,一个表的视图,或者数据库中的其他对象。 |
| ALTER | 修改数据库中的某个已有的数据库对象,比如一个表。 |
| DROP | 删除整个表,或者表的视图,或者数据库中的其他对象。 |
(DML)数据操作语言:
| CMD | Description |
|---|---|
| INSERT | 创建一条记录。 |
| UPDATE | 修改记录。 |
| DELETE | 删除记录。 |
(DQL)数据查询语言:
| CMD | Description |
|---|---|
| SELECT | 从一个或多个表中检索某些记录。 |
Sqlite点命令
先看一张Windows下的截图:

这是在Windows的cmd下运行sqlite3命令(如何安装和配置烦请自行google " baidu),然后依据提示运行.help的打印(只截图一部分)。
可以发现sqlite的help列出来了所有sqlite支持的点命令,也可以发现,点命令不需要已”;”结尾。
我们对上面的.help命令进行翻译大致如下:
| CMD | Description | ||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| .backup ?DB? FILE | 备份DB数据库(默认是”main”)到FILE文件。 | ||||||||||||||||||||||||||||||||||||||||||
| .bail ON/OFF | 发生错误后停止。默认为OFF。 | ||||||||||||||||||||||||||||||||||||||||||
| .databases | 列出附加数据库的名称和文件。 | ||||||||||||||||||||||||||||||||||||||||||
| .dump ?TABLE? | 以SQL文本格式转储数据库。如果指定了TABLE表,则只转储匹配LIKE模式的TABLE表。 | ||||||||||||||||||||||||||||||||||||||||||
| .echo ON/OFF | 开启或关闭echo命令。 | ||||||||||||||||||||||||||||||||||||||||||
| .exit | 退出SQLite提示符。 | ||||||||||||||||||||||||||||||||||||||||||
| .explain ON/OFF | 开启或关闭适合于EXPLAIN的输出模式。如果没有带参数,则为EXPLAIN on,及开启EXPLAIN。 | ||||||||||||||||||||||||||||||||||||||||||
| .header(s) ON/OFF | 开启或关闭头部显示。 | ||||||||||||||||||||||||||||||||||||||||||
| .help | 显示消息。 | ||||||||||||||||||||||||||||||||||||||||||
| .import FILE TABLE | 导入来自FILE文件的数据到TABLE表中。 | ||||||||||||||||||||||||||||||||||||||||||
| .indices ?TABLE? | 显示所有索引的名称。如果指定了TABLE表,则只显示匹配LIKE模式的TABLE表的索引。 | ||||||||||||||||||||||||||||||||||||||||||
| .load FILE ?ENTRY? | 加载一个扩展库。 | ||||||||||||||||||||||||||||||||||||||||||
| .log FILE/off | 开启或关闭日志。FILE文件可以是stderr(标准错误)/stdout(标准输出)。 | ||||||||||||||||||||||||||||||||||||||||||
| .mode MODE | 设置输出模式,MODE可以是下列之一:csv 逗号分隔的值;column 左对齐的列;html HTML的代码;insert TABLE表的SQL插入(insert)语句;line 每行一个值;list 由 .separator字符串分隔的值;tabs 由Tab分隔的值;tcl TCL列表元素。
Sqlite数据库的sqlite_master表主表中保存数据库表的关键信息,并把它命名为sqlite_master。如要查看表概要,可如下操作: sqlite>.schema sqlite_master Sqlite语法规则SQLite是遵循一套独特的称为语法的规则和准则。 SQLite是不区分大小写的,但也有一些命令是大小写敏感的,比如GLOB和glob在SQLite的语句中有不同的含义。 SQLite 注释是附加的注释,可以在 SQLite 代码中添加注释以增加其可读性,他们可以出现在任何空白处,包括在表达式内和其他 SQL 语句的中间,但它们不能嵌套。 SQL注释以两个连续的”-“字符开始,并扩展至下一个换行符或直到输入结束,以先到者为准。也可以以”/*"开始,并扩展至下一个 “*/” 字符对或直到输入结束,以先到者为准。SQLite的注释可以跨越多行。 SQLite语句以任何关键字开始,以”;”结束。 Sqlite数据类型SQLite数据类型是一个用来指定任何对象的数据类型的属性。SQLite 中的每一列,每个变量和表达式都有相关的数据类型。您可以在创建表的同时使用这些数据类型。SQLite使用一个更普遍的动态类型系统。在SQLite中,值的数据类型与值本身是相关的,而不是与它的容器相关。 存储类SQLite有5个原始的数据类型,被称为存储类。存储类这个词表明了一个值在磁盘上存储的格式,其实就是类型或数据类型的同义词。如下即是存储类:
如下就是验证结果: SQLite单独的一个字段可能包含不同存储类的值。 如下就是验证结果: 喜欢钻牛角尖的这时 |

