浅用sqlite3
Posted 菜鸟可米
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了浅用sqlite3相关的知识,希望对你有一定的参考价值。
最近工作接触到sqlite3了,于是用博客记录下,当然只是浅用哈!
参考资料:http://www.runoob.com/sqlite/sqlite-tutorial.html
概念:
SQLite 是一个软件库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。它是一个零配置的数据库,这意味着与其他数据库一样,您不需要在系统中配置。
就像其他数据库,SQLite 引擎不是一个独立的进程,可以按应用程序需求进行静态或动态连接。SQLite 直接访问其存储文件。
SQLite 是在世界上最广泛部署的 SQL 数据库引擎。SQLite 源代码不受版权限制。
优势:
-
不需要一个单独的服务器进程或操作的系统(无服务器的)。
-
SQLite 不需要配置,这意味着不需要安装或管理。
-
一个完整的 SQLite 数据库是存储在一个单一的跨平台的磁盘文件。
-
SQLite 是非常小的,是轻量级的,完全配置时小于 400KiB,省略可选功能配置时小于250KiB。
-
SQLite 是自给自足的,这意味着不需要任何外部的依赖。
-
SQLite 事务是完全兼容 ACID 的,允许从多个进程或线程安全访问。
-
SQLite 支持 SQL92(SQL2)标准的大多数查询语言的功能。
-
SQLite 使用 ANSI-C 编写的,并提供了简单和易于使用的 API。
-
SQLite 可在 UNIX(Linux, Mac OS-X, android, ios)和 Windows(Win32, WinCE, WinRT)中运行。
命令:
与其它关系数据库差不多命令类似于 SQL。命令包括 CREATE、SELECT、INSERT、UPDATE、DELETE 和 DROP。
- DDL(数据定义语言): create 创建一个新的表,一个表的视图,或者数据库中的其他对象。 drop 修改数据库中的某个已有的数据库对象,比如一个表。 alter 删除整个表,或者表的视图,或者数据库中的其他对象。
- DML(数据操纵语言): delete 创建一条记录。 update 修改记录。 insert 删除记录。
- DQL(数据查询语言): select 从一个或多个表中检索某些记录。
安装:
在windows里其实不需要进行安装的,直接解压可用(哈哈,很方便吧!)
在官网http://www.sqlite.org/download.html 我们下载 sqlite-tools-win32-x86-3130000.zip 如下图。
然后以我电脑的为例:
在F盘创建一个文件夹sqlite3,将下载的文件解压,会有三个文件(sqlite3.exe sqldiff.exe sqlite3_analyzer.exe),直接放在sqlite3目录下就可以了,如下图。
运行: 一、直接点击sqlite3.exe即可
二、或者在CMD下切换到F盘的sqlite3文件夹也行
验证安装成功,直接在输入sqlite3,还可以看到当前的版本号。
命令:
如需获取可用的点命令的清单,可以在任何时候输入 ".help"。常用命令描述如下:
命令 | 描述 |
---|---|
.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 可以是下列之一:
|
.nullvalue STRING | 在 NULL 值的地方输出 STRING 字符串。 |
.output FILENAME | 发送输出到 FILENAME 文件。 |
.output stdout | 发送输出到屏幕。 |
.print STRING... | 逐字地输出 STRING 字符串。 |
.prompt MAIN CONTINUE | 替换标准提示符。 |
.quit | 退出 SQLite 提示符。 |
.read FILENAME | 执行 FILENAME 文件中的 SQL。 |
.schema ?TABLE? | 显示 CREATE 语句。如果指定了 TABLE 表,则只显示匹配 LIKE 模式的 TABLE 表。 |
.separator STRING | 改变输出模式和 .import 所使用的分隔符。 |
.show | 显示各种设置的当前值。 |
.stats ON|OFF | 开启或关闭统计。 |
.tables ?PATTERN? | 列出匹配 LIKE 模式的表的名称。 |
.timeout MS | 尝试打开锁定的表 MS 微秒。 |
.width NUM NUM | 为 "column" 模式设置列宽度。 |
.timer ON|OFF | 开启或关闭 CPU 定时器测量。 |
用.show 命令,来查看 SQLite 命令提示符的默认设置
试例:
1.因为之前进入了sqlite3了,先用.quit退出sqlite
2.再用sqlite3 Test.db加载或创建一个数据库
3.然后用sql语句创建一个一张表user
4.然后又用.databases和.tables显示当前已建数据库及数据库中表
5.最后向数据表中分别有两种方式插入两条数据
用select命令查看添加的数据:
用.mode list|column|insert|line|tabs|tcl|csv 改变输出格式
用.headers on/off 显示表头 默认off
用.width 10,20,0设置.mode column中每个列的宽度,显示如下:
用.timer ON|OFF 开启sql运行耗时度量
更多可以参考:http://blog.csdn.net/linchunhua/article/details/7184439
哈哈,暂时这么多,其它多尝试下很多命令,还是很简单的!慢慢来了~
以上是关于浅用sqlite3的主要内容,如果未能解决你的问题,请参考以下文章