📅  最后修改于: 2021-01-04 04:53:38             🧑  作者: Mango
本章可帮助您了解什么是SQLite,它与SQL的区别,为什么需要它以及它处理应用程序数据库的方式。
SQLite是一个软件库,可实现自包含,无服务器,零配置的事务型SQL数据库引擎。 SQLite是周围增长最快的数据库引擎之一,但是就受欢迎程度而言,增长是增长的,与其大小无关。 SQLite的源代码位于公共领域。
SQLite是一个进程内库,可实现自包含的,无服务器的,零配置的事务型SQL数据库引擎。它是一个零配置的数据库,这意味着像其他数据库一样,您无需在系统中对其进行配置。
SQLite引擎不是一个独立于其他数据库的独立进程,您可以根据需要将其静态或动态链接到应用程序。 SQLite直接访问其存储文件。
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)上可用。
2000年-D.理查德·希普(R. Richard Hipp)设计SQLite的目的是无需管理程序即可运行程序。
2000年-8月,SQLite 1.0与GNU数据库管理器一起发布。
2011年-Hipp宣布将UNQl接口添加到SQLite DB并开发UNQLite(面向文档的数据库)。
下表列出了SQLite中不支持的SQL92功能。
Sr.No. | Feature & Description |
---|---|
1 |
RIGHT OUTER JOIN Only LEFT OUTER JOIN is implemented. |
2 |
FULL OUTER JOIN Only LEFT OUTER JOIN is implemented. |
3 |
ALTER TABLE The RENAME TABLE and ADD COLUMN variants of the ALTER TABLE command are supported. The DROP COLUMN, ALTER COLUMN, ADD CONSTRAINT are not supported. |
4 |
Trigger support FOR EACH ROW triggers are supported but not FOR EACH STATEMENT triggers. |
5 |
VIEWs VIEWs in SQLite are read-only. You may not execute a DELETE, INSERT, or UPDATE statement on a view. |
6 |
GRANT and REVOKE The only access permissions that can be applied are the normal file access permissions of the underlying operating system. |
与关系数据库进行交互的标准SQLite命令类似于SQL。它们是CREATE,SELECT,INSERT,UPDATE,DELETE和DROP。这些命令可以根据其操作性质分为几类-
Sr.No. | Command & Description |
---|---|
1 |
CREATE Creates a new table, a view of a table, or other object in database. |
2 |
ALTER Modifies an existing database object, such as a table. |
3 |
DROP Deletes an entire table, a view of a table or other object in the database. |
Sr.No. | Command & Description |
---|---|
1 |
INSERT Creates a record |
2 |
UPDATE Modifies records |
3 |
DELETE Deletes records |
Sr.No. | Command & Description |
---|---|
1 |
SELECT Retrieves certain records from one or more tables |