浅用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。

  1. DDL(数据定义语言): create 创建一个新的表,一个表的视图,或者数据库中的其他对象。  drop 修改数据库中的某个已有的数据库对象,比如一个表。   alter 删除整个表,或者表的视图,或者数据库中的其他对象。
  2. DML(数据操纵语言): delete 创建一条记录。 update 修改记录。  insert 删除记录。
  3. 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 可以是下列之一:
  • csv 逗号分隔的值

  • column 左对齐的列

  • html HTML 的 <table> 代码

  • insert TABLE 表的 SQL 插入(insert)语句

  • line 每行一个值

  • list 由 .separator 字符串分隔的值

  • tabs 由 Tab 分隔的值

  • tcl TCL 列表元素

.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的主要内容,如果未能解决你的问题,请参考以下文章

网易 UI 自动化工具 Airtest 浅用记录

数据库学习_sqlite3概念和基本操作

python sqlite3

SQLite剖析之编程接口详解

数据库—SQLite3

Python基于 sqlite3 的数据库操作(零基础入门教程)