学习SQLite之路(一)

简介:   工作快一年了,接触的东西不是很多,学到的东西也不多。无意中看到公司的代码有一点关于sqlite3的(不是我这一层负责的代码),于是乎就学学试试。    参考: http://www.runoob.com/sqlite/sqlite-tutorial.html    20160612 更新 1,什么是SQLite? SQLite是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。

 

  工作快一年了,接触的东西不是很多,学到的东西也不多。无意中看到公司的代码有一点关于sqlite3的(不是我这一层负责的代码),于是乎就学学试试。

 

 参考: http://www.runoob.com/sqlite/sqlite-tutorial.html 

 

20160612 更新

1,什么是SQLite?

SQLite是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。它是一个零配置的数据库。

 

2.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)中运行

 

3.SQLite命令: 跟其他数据库语言一样

(1)DDL(数据定义语言): create  drop  alter

(2)DML(数据操纵语言): delete  update  insert

(3)DQL(数据查询语言): select

 

 4.SQLite的安装

在windows里不需要安装,在http://www.sqlite.org/download.html 这里下载 sqlite-tools-win32-x86-3130000.zip 这个东西。

我以我的为例:

在F盘创建一个文件夹sqlite3,将下载的文件解压,会有三个文件(sqlite3.exe  sqldiff.exe  sqlite3_analyzer.exe),直接放在sqlite3目录下就可以了。

运行: 运行cmd.exe 然后切换到F盘的sqlite3文件夹。就可以直接运行了。

 

20160614 更新

 

1.SQLite命令:我们在命令提示符下键入一个简单的 sqlite3 命令,在 SQLite 命令提示符下,您可以使用各种 SQLite 命令。

就像这样:

 

2.需获取可用的点命令的清单,可以在任何时候输入 ".help",再回车就可以。

 

3.查看 SQLite 命令提示符的默认设置:   .show

还可以进行设置:就像下面这样(具体可以参考: http://blog.csdn.net/wirelessqa/article/details/21030147 

4.先说一个命令: 

.read  ***(一个数据文件)

比如说我在sqlite3目录下新建一个文档:  create_company.txt

里面的内容是:

drop table company; -- 删除表
create table company(  --  创建表  这个表示单行注释
ID int primary key not NULL,  /* 这个是多行注释 */
NAME TEXT NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR(50),
SALARY REAL
);

然后:.read create_company.txt   /* 就相当于直接运行了create_company.txt里面的语句 */

 

5. SQLite语法:SQLite 是遵循一套独特的称为语法的规则和准则

(具体后面用到时再分析)

 

6. SQLite数据类型:数据类型是一个用来指定任何对象的数据类型的属性

可以在创建表的同时使用这些数据类型。SQLite 使用一个更普遍的动态类型系统。在 SQLite 中,值的数据类型与值本身是相关的,而不是与它的容器相关。

(1)SQLite存储类:主要有以下几种,冒号后面是解释

NULL:  一个NULL值

INTEGER: 一个带符号的整数,根据值的大小存储在 1、2、3、4、6 或 8 字节中

REAL:浮点数,存储为8字节的IEEE浮点数字

TEXT:文本字符串,使用数据库编码(UTF-8、UTF-16BE等)存储

GLOB:blob数据,完全根据它的输入存储(这个我也不是很理解

 

(2)布尔数据类型: 没有专门的布尔数据,只有0和1

 

7. 创建数据库:

(1)基本语法如下: sqlite>sqlite3 testDB.db

 (2).dump 命令:导出完整的数据库在一个文本文件中

如:sqlite> testDB,db .dump > testDB,sql   /*  将转换整个 testDB.db 数据库的内容到 SQLite 的语句中,并将其转储到 ASCII 文本文件 testDB.sql 中  */

恢复: sqlite> testDB,db  < testDB,sql   /*   从生成的 testDB.sql 恢复   */

 

目录
相关文章
|
29天前
|
API 数据库 C语言
【C/C++ 数据库 sqlite3】SQLite C语言API返回值深入解析
【C/C++ 数据库 sqlite3】SQLite C语言API返回值深入解析
169 0
|
1月前
|
SQL 存储 关系型数据库
【MySQL 数据库】11、学习 MySQL 中的【锁】
【MySQL 数据库】11、学习 MySQL 中的【锁】
76 0
|
2月前
|
存储 人工智能 Cloud Native
阿里云瑶池数据库训练营权益:《玩转Lindorm》学习资料开放下载!
阿里云瑶池数据库训练营权益:《玩转Lindorm》学习资料开放下载!
|
2月前
|
存储 关系型数据库 MySQL
MySQL技能完整学习列表5、数据库操作——1、创建数据库和表——2、修改表结构(ALTER TABLE)
MySQL技能完整学习列表5、数据库操作——1、创建数据库和表——2、修改表结构(ALTER TABLE)
183 0
|
1月前
|
SQL 关系型数据库 MySQL
【MySQL 数据库】4、MySQL 事务学习
【MySQL 数据库】4、MySQL 事务学习
44 0
|
21天前
|
SQL 关系型数据库 MySQL
轻松入门MySQL:深入学习数据库表管理,创建、修改、约束、建议与性能优化(3)
轻松入门MySQL:深入学习数据库表管理,创建、修改、约束、建议与性能优化(3)
|
2月前
|
存储 监控 安全
内网屏幕监控软件的数据存储与管理:使用SQLite数据库保存监控记录和配置信息
在当今数字化时代,安全和监控在企业和组织中变得至关重要。内网屏幕监控软件作为一种关键工具,帮助组织监视员工的活动并确保信息安全。这种软件不仅需要高效地记录和管理监控数据,还需要能够方便地进行配置和调整。本文将讨论如何使用SQLite数据库来保存监控记录和配置信息,并介绍如何通过自动化机制将监控到的数据提交到指定网站。
162 2
|
11天前
|
SQL 关系型数据库 数据库
Python中SQLite数据库操作详解:利用sqlite3模块
【4月更文挑战第13天】在Python编程中,SQLite数据库是一个轻量级的关系型数据库管理系统,它包含在一个单一的文件内,不需要一个单独的服务器进程或操作系统级别的配置。由于其简单易用和高效性,SQLite经常作为应用程序的本地数据库解决方案。Python的内置sqlite3模块提供了与SQLite数据库交互的接口,使得在Python中操作SQLite数据库变得非常容易。
|
16天前
|
关系型数据库 MySQL 数据库连接
Python+SQLite数据库实现服务端高并发写入
Python中使用SQLite内存模式实现高并发写入:创建内存数据库连接,建立表格,通过多线程并发写入数据。虽然能避免数据竞争,但由于SQLite内存模式采用锁机制,可能在高并发时引发性能瓶颈。若需更高性能,可选择MySQL或PostgreSQL。
22 0
|
1月前
|
关系型数据库 数据库 C++
嵌入式数据库sqlite3【基础篇】基本命令操作,小白一看就懂(C/C++)
嵌入式数据库sqlite3【基础篇】基本命令操作,小白一看就懂(C/C++)

热门文章

最新文章