开发学院

您的位置:首页>教程>正文

教程正文

SQLite 简述

SQLite 简述

  本章帮助您了解什么是SQLite,它与SQL有何不同,为什么需要它以及它处理应用程序数据库的方式。

  SQLite是一个自包含运行库、无需服务器、零配置、事务性SQL数据库引擎。SQLite是全球增长最快的数据库引擎之一,SQLite的源代码位于公共域中。

什么是SQLite?

  SQLite一款轻型的数据库,它实现了一个自包含运行库、无服务器、零配置、事务性的SQL数据库引擎。它是一个零配置的数据库,这意味着与其他数据库一样,您不需要在系统中配置它。

SQLite engine不像其他数据库那样是一个独立的进程,您可以根据需要将其与应用程序静态或动态链接。SQLite直接访问其存储文件。

为什么是SQLite?

  SQLite不需要单独的服务器进程或系统来运行(无服务器)。

  SQLite零配置,这意味着不需要设置或管理。

  完整的SQLite数据库存储在单个跨平台磁盘文件中。

  SQLite非常小且轻量级,完全配置小于400k或小于250k,省略了可选功能。

  SQLite是自包含运行库,这意味着没有外部依赖关系。

  SQLite事务完全符合ACID规范,允许从多个进程或线程安全访问。

  SQLite支持SQL92 (SQL2)标准中的大多数查询语言功能。

  SQLite是用ANSI-C编写的,它提供了简单易用的API。

  SQLite可在UNIX (Linux,Mac操作系统-X,Android,iOS)和Windows(Win32,WinCE,WinRT)上使用。

简史

  2000年的今天,理查德·希普设计SQLite的目的是不需要管理来运行一个程序。

  2000年8月,SQLite 1.0与GNU数据库管理器一起发布。

  2011年的今天,Hipp宣布向SQLite数据库添加UNQl接口,并开发面向文档的数据库。

SQLite限制

  下表列出了SQLite中SQL92的几个不受支持的功能。

  1.RIGHT OUTER JOIN:仅实现LEFT JOIN和OUTER JOIN。

  2.FULL OUTER JOIN:仅实现LEFT JOIN和OUTER JOIN.

  3.ALTER TABLE:支持ALTER TABLE命令的重命名表和添加列变量。不支持删除列、更改列、添加约束。

  4.Trigger support:支持行触发器,但不支持句触发器。

  5.VIEWs:SQLite中的视图是只读的。您不能在视图上执行DELETE、INSERT或UPDATE语句。

  6.GRANT and REVOKE:唯一可以应用的访问权限是基础操作系统的正常文件访问权限。

SQLite 命令

  与关系数据库交互的命令为SQL。支持常见的CREATE, SELECT, INSERT, UPDATE, DELETE和DROP等。这些命令可根据其操作性质分类为:

DDL - 数据定义语言

  1.CREATE:创建新表、表视图或数据库中的其他对象。

  2.ALTER:修改现有的数据库对象,如表。

  3.DROP:删除整个表、表视图或数据库中的其他对象。

DML - 数据操作语言

  INSERT 创建记录

  UPDATE 修改记录

  DELETE 删除记录

DQL - 数据查询语言

  SELECT:从一个或多个表检索某些记录