合 SQLite快速入门教程
Tags: SQLite
这个SQLite快速入门教程教你如何有效地开始学习并使用SQLite。通过本教程的实践操作学习之后,相信你应该可以了解并能够熟练地使用SQLite了。
如果您一直在使用其他关系数据库管理系统,例如:MySQL,PostgreSQL,Oracle,Microsoft SQL Sever等,并且您听说过SQLite。那么现在就可更多了解和学习SQLite了。
如果您想使用SQLite数据库而不是简单文件来管理应用程序中的结构化数据。并想要立即开始使用SQLite,以确定SQLite是否可以用于您的应用程序。
如果你是刚刚开始学习SQL,并希望使用SQLite作为数据库系统。
如果您是上述人员之一,这个SQLite教程是很适合您。
1. SQLite是什么?
SQLite是一种开源,零配置,独立的,独立的,事务关系数据库引擎,旨在嵌入到应用程序中。
2. SQLite入门步骤
如果这是您第一次使用SQLite,应该先学习这一部分。 按照这3
个简单的步骤,快速开始使用SQLite。
- 首先,第一个重要的问题:什么是SQLite? 在开始使用SQLite之前,简要了解一下SQLite。
- 其次,知道如何在您的计算机上下载和安装SQLite GUI工具。
- 第三,介绍如何创建SQLite示例数据库,并引导完成使用示例数据库进行练习操作的步骤。
2.1 安装SQLite数据库
SQLite以其零配置而闻名,所以不需要复杂的设置或管理。 下面来看看如何在系统上安装SQLite。
在Windows上安装SQLite
按照以下步骤进行:
打开SQLite官方网站,转到下载页面 - http://www.sqlite.org/download.html 并下载预编译的Windows二进制文件。
下载
sqlite-dll
和sqlite-shell
的zip文件以及sqlite-tools-win32-x86-3170000.zip
文件。创建一个文件夹:
D:/software/sqlite
并放置这些文件。
- 进入
D:/software/sqlite
目录并打开sqlite3
命令。它将如下所示:
1 2 3 4 5 6 | D:\software\sqlite> sqlite3 SQLite version 3.18.0 2017-03-28 18:48:43 Enter ".help" for usage hints. Connected to a transient in-memory database. Use ".open FILENAME" to reopen on a persistent database. sqlite> |
上述方法有助于永久创建数据库,附加数据库和分离数据库。在SQLite中执行CRUD操作有另一种方法。在这种方法中,不需要设置路径。下面我们来看看如何操作 -
- 只需下载SQlite预编译的二进制zip文件:
sqlite-tools-win32-x86-3170000.zip
。 - 解压到目录:
D:/software/sqlite
。 - 直接双击运行
sqlite3.exe
应用程序,得到如下结果 -
现在就可以在这里执行SQLite查询。 但是在这里,数据是暂时的,一旦你关闭了电脑,就将失去操作过的所有数据记录。因为使用这种方法不能创建,附加或分离数据库。
在Linux上安装SQLite
当前,几乎所有的Linux操作系统都将SQLite作为一部分一起发布。可使用以下命令来检查你的机器上是否安装了SQLite。
1 2 3 4 5 | $ sqlite3 SQLite version 3.7.15.2 2013-01-09 11:53:05 Enter ".help" for instructions Enter SQL statements terminated with a ";" sqlite> |
如果没有看到上面的结果,那么你的Linux机器上就还没有安装SQLite。可以按照以下步骤安装SQLite:
打开转到SQLite下载页面( http://www.sqlite.org/download.html ),并从源代码部分下载文件:sqlite-autoconf-*.tar.gz
。
按照以下步骤操作:
1 2 3 4 5 | $ tar xvfz sqlite-autoconf-3071502.tar.gz $ cd sqlite-autoconf-3071502 $ ./configure --prefix=/usr/local $ make $ make install |
2.2. SQLite语法大全
语法是一组独特的规则和约定。 以下是SQLite的语法列表。
区分大小写:
- SQLite不区分大小写。但是,有一些区分大小写的命令。例如:
GLOB
和glob
在SQLite语句中有不同的含义。
注释:
- 注释用于在SQLite代码中增加代码的可读性。
- 注释不能嵌套。
- 注释以两个连续的“
-
”字符。 - 也可使用“
/*
”字符开始,并延伸至下一个“*/
”字符对所包括的内容视为注释。
SQLite语句
所有的SQLite语句都是以关键字(如:SELECT
,INSERT
,UPDATE
,DELETE
,ALTER
,DROP
等)开始的。所有语句都以分号(;
)结尾。
SQLite ANALYZE语句的语法:
1 2 3 4 5 | ANALYZE; -- or ANALYZE database_name; -- or ANALYZE database_name.table_name; |
SQLite AND/OR子句的语法:
1 2 3 | SELECT column1, column2....columnN FROM table_name WHERE CONDITION-1 {AND|OR} CONDITION-2; |
SQLite ALTER TABLE语句的语法
1 | ALTER TABLE table_name ADD COLUMN column_def...; |
SQLite ALTER TABLE语句(Rename)语句的语法
1 | ALTER TABLE table_name RENAME TO new_table_name; |
SQLite ATTACH DATABASE语句的语法:
1 | ATTACH DATABASE 'DatabaseName' As 'Alias-Name'; |
SQLite BEGIN TRANSACTION语句的语法:
1 2 3 | BEGIN; -- or BEGIN EXCLUSIVE TRANSACTION; |
SQLite BETWEEN语句的语法:
1 2 3 4 5 | SELECT column1, column2....columnN FROM table_name WHERE column_name BETWEEN val-1 AND val-2; SQLite COMMIT Statement: COMMIT; |
SQLite CREATE INDEX语句的语法:
1 2 | CREATE INDEX index_name ON table_name ( column_name COLLATE NOCASE ); |
SQLite CREATE UNIQUE INDEX语句的语法:
1 2 | CREATE UNIQUE INDEX index_name ON table_name ( column1, column2,...columnN); |
SQLite CREATE TABLE语句的语法:
1 2 3 4 5 6 7 | CREATE TABLE table_name( column1 datatype, column2 datatype, column3 datatype, ..... columnN datatype, PRIMARY KEY( one or more columns )); |
SQLite CREATE TRIGGER语句的语法:
1 2 3 4 5 6 7 | CREATE TRIGGER database_name.trigger_name BEFORE INSERT ON table_name FOR EACH ROW BEGIN stmt1; stmt2; .... END; |
SQLite CREATE VIEW语句的语法:
1 2 | CREATE VIEW database_name.view_name AS SELECT statement....; |
SQLite CREATE VIRTUAL TABLE语句的语法:
1 2 3 | CREATE VIRTUAL TABLE database_name.table_name USING weblog( access.log ); -- or CREATE VIRTUAL TABLE database_name.table_name USING fts3( ); |
SQLite COMMIT TRANSACTION语句的语法:
1 | COMMIT; |
SQLite COUNT语句的语法:
1 2 3 | SELECT COUNT(column_name) FROM table_name WHERE CONDITION; |
SQLite DELETE语句的语法:
1 2 | DELETE FROM table_name WHERE {CONDITION}; |
SQLite DETACH DATABASE语句的语法: