SQLite 数据库介绍和基本用法

Posted Abeam

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQLite 数据库介绍和基本用法相关的知识,希望对你有一定的参考价值。

Ø  简介

SQLite 是一款轻量级的关系型数据库,同时也是一种嵌入式数据库,与 OraclemysqlSQL Server 等数据库不同,它可以内嵌在程序中,是程序中的一个组成部分。所以,经常被应用在 androidioshtml5 等移动设备上,而且它运行速度非常快,占用资源也较少,通常只需要几百 KB 的内存就够了。SQLite 不仅支持标准的 SQL 语法,还遵循了数据库的 ACID 事务,在功能上基本能满足数据库的常见操作。因为它是轻量级的本地存储数据库,完成本地数据的持久化,所以要求就不能向 OracleDB2 等关系型数据库那么高了。下面,分为以下几点来了解 SQLite 数据库:

1.   SQLite 的优点

2.   SQLite 的数据类型

3.   SQLite 常用的 DDL 语法

4.   SQLite 常用的 CRUD 语法

5.   SQLite 的系统表

 

1.   SQLite 的优点

1)   轻量级、内嵌式数据库,运行速度快,性能高。

2)   通常与程序一起编译,不需要独立维护,简约而不简单。最好不要把它看作一个数据库,而是一个文件系统。因为,它其实就是一个以 *.db 为后缀的一个文件。

3)   支持常见的 SQL 语法,和常见的数据库功能,比如:子查询、事物、索引、视图、触发器等,可以说是麻雀虽小五脏俱全。

4)   可移植性强,支持在 UnixLinuxMACWindows 等系统上运行。

 

2.   SQLite 的数据类型

SQLite 的数据类型也比较简单,大致分为以下四种:

1)   Integer, 有符号的整数类型。

2)   Real, 浮点型。

3)   Text, 字符串类型,编码取决于 BD 的编码。

4)   Blob, 二进制类型,用于存储二进制数据(比如:图片、视频等)。

5)   Boolean, SQLite 并没有 bool 类型,通常使用 0 1 代替,0 表示 false 1 表示 true

6)   DateTimeSQLite 也没有日期类型,通常使用 Text 类型代替。

 

3.   SQLite 常用的 DDL 语法

1)   创建表

1.   直接创建表(已存在会报错)

CREATE TABLE Employee(

       id integer PRIMARY KEY AUTOINCREMENT, --员工Id:主键,自增

       name text not null, --姓名

       age integer null, --年龄

       salary real null, --薪资

       pic blob null --照片

);

 

2.   不存在则创建,否则不创建

CREATE TABLE IF NOT EXISTS Employee(...);

 

3.   根据现有表,创建另一张表(并写入数据)

CREATE TABLE Employee2 AS SELECT id, name FROM Employee;

结果:CREATE TABLE Employee2(id INT,name TEXT);

 

2)   修改表

1.   修改表名

ALTER TABLE Employee RENAME TO Employees;

 

2.   添加字段

ALTER TABLE Employees ADD COLUMN birthday text;

 

3.   修改字段

不支持直接修改,但可以通过其他方式达到修改的目的。

 

4.   删除字段

也不支持直接删除,但可以通过其他方式达到删除的目的。

 

3)   删除表

1.   直接删除(不存在会报错)

DROP TABLE Employee2;

 

2.   存在删除,否则不删除

DROP TABLE IF EXISTS Employee2;

 

4.   SQLite 常用的 CRUD 语法

1)   插入数据(必须指定列名)

INSERT INTO Employees(name, age, salary, pic)

VALUES(\'爱变成\', 21, 8888.88, null),(\'程旭媛\', 20, 6666.66, null)

,(\'张无忌\', 26, 7890.00, null),(\'孙悟空\', 50, 10000.00, null)

,(\'白骨精\', 100, 10000.00, null);

 

2)   查询数据

1.   简单查询

SELECT * FROM Employees WHERE id = 1;

clip_image001[6]

 

2.   模糊查询

SELECT * FROM Employees WHERE id < 4 AND name LIKE \'%\';

clip_image002[6]

 

3.   排序 + 分页

SELECT * FROM Employees WHERE id > 0 ORDER BY id ASC LIMIT 1, 2;

clip_image003[6]

 

一文掌握SQLite3基本用法

sqlite数据库用法简介

AWK介绍和基本用法

javadoc基本介绍和基本用法

Android-SQLite和SQLiteOpenHelper

[数据库] Navicat for Oracle基本用法图文介绍