首页 理论教育 SQLite命令和语法介绍及深入学习

SQLite命令和语法介绍及深入学习

时间:2023-08-24 理论教育 版权反馈
【摘要】:在SQLite命令提示符下,用户可以使用各种SQLite命令和SQLite语法。SQLite命令又被称为点命令,特征是以符号“.”开头,不以分号“;”结束。在使用了该指令后,后面的SQLite语句都将作用于该附加数据库。并且在本节最开始介绍SQLite时,SQLite的一个特点就是它支持SQL语句丝毫不逊色于其他开源数据库。另外,和SQLite相关的更多特性和更多高级操作,如嵌入式开发和使用,本书不再深入探讨,有兴趣的读者可以查阅相关资料进行深入学习。

SQLite命令和语法介绍及深入学习

在SQLite命令提示符下,用户可以使用各种SQLite命令和SQLite语法。SQLite命令又被称为点命令,特征是以符号“.”开头,不以分号“;”结束。如需获取可用的点命令列表,可以在命令行输入“.help”进行查看,图3-53仅截取了部分结果。

图3-51 添加环境变量

图3-52 唤出命令行

下面,本书将介绍一些SQLite中常用的语法,以便读者加深对SQLite的印象。需要指出的是,SQLite是不区分大小写的,但也有一些命令是大小写敏感的,如“GLOB”和“glob”在SQLite的语句中有不同的含义,读者在开发时需要注意这一点。

1.创建数据库

在命令行模式下切换到需要创建数据库的文件夹,然后使用sqlite3 DatabaseName.db命令。例如,笔者在命令行模式下将目录切换到C:\test,输入命令sqlite3 TestDB.db,该命令会在该目录创建一个TestDB.db文件,这个文件会被SQLite引擎用作数据库(图3-54)。可以使用SQLite的.databases命令来检查它是否在数据库列表中。

图3-53 部分点命令

图3-54 数据库文件

2.创建表

可以使用.tables命令列出该数据库中的所有表。(www.xing528.com)

3.删除表

使用DROP TABLE语句,删除表及其相关数据、索引约束和权限规范等。需要注意,一个表一旦被删除,那么表中的信息将永远丢失。

首先确认要删除的表是存在的,然后将其从数据库中删除:

4.附加数据库

当同一时间有多个数据库可用时,如果想使用其中的一个,可以使用ATTACH DATABASE语句选择一个特定的数据库。在使用了该指令后,后面的SQLite语句都将作用于该附加数据库。例如,附加上面的TestDB.db数据库,并使用.database命令显示附加的数据库,示例如下:

需要注意的是,数据库名称main和temp作为保留字被保留,用于主数据库和存储临时表及其他临时数据对象的数据库。这两个数据库名称可用于每个数据库连接,且不应该被用于附加。

5.分离数据库

使用DETACH DATABASE语句可以把命名数据库从一个数据库连接分离出来,即对上面ATTACH的附加数据库进行分离。

注意:用户无法分离main或temp数据库。并且,如果分离的数据库是在内存中的数据库或是临时数据库,分离后该数据库将被摧毁而无法找回。

【例】附加数据库TEST进行分离:

进行分离后,前面的附加数据库就不存在了。

6.其他操作

在第三章第一节中介绍了SQL的四类语句。并且在本节最开始介绍SQLite时,SQLite的一个特点就是它支持SQL语句丝毫不逊色于其他开源数据库。其实,SQLite的DQL、DML等语句与MySQL类似,这里不再赘述。另外,和SQLite相关的更多特性和更多高级操作,如嵌入式开发和使用,本书不再深入探讨,有兴趣的读者可以查阅相关资料进行深入学习

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈