SQLite的使用

什么是SQLiteSQLite是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它实现自给自足的、无服务器的、零配置的、事务

大家好,关于SQLite的使用很多朋友都还不太明白,今天小编就来为大家分享关于的知识,希望对各位有所帮助!

为什么要用SQLite

SQLite 小巧轻便,完全配置时小于400KiB,省略可选功能时小于250KiB。 SQLite 是自给自足的,不需要任何外部依赖。 SQLite 不需要单独的服务器进程或操作系统。 SQLite 不需要配置,这意味着不需要安装或管理。完整的SQLite 数据库存储在单个跨平台磁盘文件中。 SQLite 事务完全兼容ACID,允许从多个进程或线程安全访问。 SQLite是跨平台的,支持许多操作系统,例如UNIX(Linux、Mac OS-X、Android、iOS)、Windows(Win32、WinCE、WinRT)。

SQlite的注释

SQLite 注释是可以添加到SQLite 代码中以提高其可读性的附加注释。它们可以出现在任何空白中,包括表达式内和其他SQL 语句的中间,但不能嵌套。

SQL 注释以两个连续的- 字符开始,并延伸到下一个换行符或直到输入结束,以先到者为准。

— 这是注释或C 风格注释,以/* 开头并以*/结尾,以先到者为准。

/* 这是一条注释*/

创建数据库

注意:通常,数据库名称在RDBMS 中应该是唯一的。

语法如下:

sqlite3 DatabaseName.db

附加数据库

当多个数据库同时可用并且您只想使用其中任何一个时,可以使用ATTACH DATABASE 选择特定数据库。使用此命令后,所有SQLite 语句将被附加。在数据库下执行。

语法如下:

附加数据库文件名AS 数据库名;

分离数据库

DETACH DTABASE 语句用于从先前使用ATTACH 语句附加的数据库连接中分离和分离指定数据库。如果多个别名已附加到同一个数据库文件,则DETACH 命令将仅断开给定名称,而其余名称仍然有效。

语法如下:

分离数据库“别名”;

创建表

CREATE TABLE 用于在任何给定数据库中创建新表。创建基本表涉及命名表、定义列以及每列的数据类型。

语法如下:

创建表database_name.table_name(column1数据类型主键(一个或多个列),column2数据类型,column3数据类型,columnN数据类型,);

删除数据表

DROP TABLE 用于删除表定义以及表的所有相关数据、索引和触发器控制器、约束和权限规范。

语法如下:

DROP TABLE 数据库名.表名;

插入数据

INSERT INTO 用于将新数据行添加到数据库中的表中。

语法如下:

向指定列插入数据:INSERT INTO TABLE_NAME [(column1,column2,column3,columnN)] VALUES(value1,value2,value3,valueN);将数据插入所有列INSERT INTO TABLE_NAME VALUES (value1 ,value2,value3,valueN);

查询语句

SELECT用于从SQLite数据库表中获取数据,并以结果表的形式返回数据。这些结果表也称为结果集。

语法如下:

— 查询表中所有记录SELECT * FROM table_name;– 查询指定列的记录SELECT column1,column2,columnN FROM table_name;

修改数据

UPDATE 用于修改表中的现有记录。您可以使用带有WHERE 子句的UPDATE 查询来修改指定的行,否则所有行都将被修改。

语法如下:

UPDATE table_name SET 列1=值1,列2=值2.列N=值NWHERE [条件];

删除数据

DELETE 用于删除表中现有的记录。您可以使用带有WHERE 子句的DELETE 查询来删除选定的行,否则所有记录都将被删除。

SQLite的使用

语法如下:

DELETE FROM table_name WHERE [条件];

Where 子句

WHERE 子句用于指定从一张表或多张表获取数据的条件。除了SELECT语句之外,当然也可以用在UPDATE和DELETE语句中。

语法如下:

SELECT column1,column2,columnN FROM table_nameWHERE [condition]

AND/OR运算符

AND/OR 运算符用于编译多个条件,以缩小SQLite 语句中选择的数据范围。也称为串联运算符。

语法如下:

SELECT 列1、列2、列N FROM 表名WHERE [条件1] AND/OR [条件2].AND/OR [条件N];

Order By子句

Order By子句用于排序,分为升序和降序。默认为升序(ASC),降序为DESC。

语法如下:

SELECT 列列表FROM 表名[WHERE 条件] [ORDER BY 列1, 列2,列N] [ASC | 列列表]降序];

Group By子句

Group By 子句与SELECT 语句一起使用,对相同的数据进行分组。

语法如下:

SELECT column-list FROM table_nameWHERE [conditions]GROUP BY column1, column2.columnN

Distinct 关键字

Distinct 关键字与SELECT 语句一起使用,可以消除所有重复记录,只获取唯一记录。

语法如下:

SELECT DISTINCT column1, column2,columnN FROM table_nameWHERE [condition]

Having子句

HAVING 子句允许您指定条件来过滤将出现在最终结果中的分组结果。

与WHERE 子句不同,HAVING 子句对GROUP BY 子句创建的分组设置条件。

语法如下:

SELECT column1,column2,columnN FROM table_nameWHERE [条件] GROUP BYcolumn1,column2.columnNHAVING [条件]ORDER BYcolumn1,column2.columnN

Like 子句

Like 子句用于匹配通配符指定模式的文本值。 Like 语句不区分大小写。

语法如下:

SELECT column_list FROM table_nameWHERE column LIKE ‘A%”A%’:查找以A 开头的任何值。’%A’:查找以A 结尾的任何值。’_A%’:查找第二个数字为A 的任何值。’% A%’:查找包含A 的任意值。 ‘A__B’:查找长度为4、以A 开头、以B 结尾的任意值。

LIMIT 子句

LIMIT 子句用于限制SELECT 语句返回的数据量。

语法如下:

SELECT column1, column2, columnN FROM table_nameLIMIT [行数] 与OFFSET 子句一起使用时LIMIT 子句的语法:

SELECT column1,column2,columnN FROM table_nameLIMIT [行数] OFFSET [行号]

Glob 子句

Glob 运算符是用于匹配通配符指定模式的文本值。如果搜索表达式与模式表达式匹配,则GLOB 运算符返回true(即1)。与LIKE 运算符不同,GLOB 区分大小写,并遵循通配符星号* 和问号? 的UNIX 语法。

语法如下:

用户评论

SQLite的使用
青衫故人

感觉写这篇博文的人把 SQLite 用得挺棒的,我之前一直用的 MySQL ,其实很多时候用 SQLite 就足够了,轻巧方便!

    有14位网友表示赞同!

SQLite的使用
你瞒我瞒

这篇博客介绍得很不错,让我对 SQLite 的一些常用函数有了更深的理解。比如事务处理,使用时需要注意的事项等等。之前都是一知半解的。

    有16位网友表示赞同!

SQLite的使用
不浪漫罪名

SQLite 确实比其他数据库更合适于很多小型项目,简单高效,上手也更容易。不过复杂的任务场景还是需要考虑 MySQL 或 PostgreSQL 等更大型的数据库吧。

    有11位网友表示赞同!

SQLite的使用
像从了良

SQLite 用起来真方便,我最近在做一个个人的小程序,用SQLite嵌入到程序里管理一些数据,真是太理想了!省去了数据库配置的麻烦。

    有11位网友表示赞同!

SQLite的使用
栀蓝

对于入门者来说,这篇博客非常有帮助。图文并茂的讲解,通俗易懂,能快速让我上手 SQLite 的使用。感谢作者分享!

    有7位网友表示赞同!

SQLite的使用
瑾澜

我觉得文章中关于连接SQLite数据库的部分可能可以更详细一点,特别是对不同情景下如何连接的不同方法的介绍会更有用的场景性。

    有14位网友表示赞同!

SQLite的使用
红玫瑰。

sqlite 还是很好用的,尤其是开发嵌入式系统的时候,它能有效节省资源。不过对于大型的数据存储和复杂的查询操作来说确实还不如 MySQL 等成熟数据库完善

    有6位网友表示赞同!

SQLite的使用
↘▂_倥絔

作者分析的 SQLite 的性能问题很有启发,比如在数据量大的时候查询速度会下降等等,这提醒我们要合理地进行数据库设计和数据优化。

    有18位网友表示赞同!

SQLite的使用
纯真ブ已不复存在

我之前从未使用过SQLite,看了这篇文章感觉确实是一个非常实用的工具。以后我会尝试用它来处理一些小型项目的数据库需求

    有12位网友表示赞同!

SQLite的使用
孤者何惧

对于追求安全性较高的数据存储应用, SQLite 还是相对容易被绕过验证的,建议在设计架构的时候考虑是否需要多级安全机制的防护措施。

    有9位网友表示赞同!

SQLite的使用
喜欢梅西

作者说得对,SQLite 的学习成本确实比较低,而且很容易集成到各种项目中。真是一款高效、易用的数据库工具!

    有7位网友表示赞同!

SQLite的使用
限量版女汉子

感觉篇文章介绍还不够全面,关于不同类型的数据库表以及数据模型的设计方式可以增加一些讲解。

    有10位网友表示赞同!

SQLite的使用
淡淡の清香

我个人觉得 SQLite 的数据并发处理能力还有待加强,在多用户环境下需要格外留意锁机制的设计才能保证数据一致性。 作者在这方面有没有更深入的看法?

    有13位网友表示赞同!

SQLite的使用
来自火星的我

SQLITE 的使用场景确实非常广泛,从移动应用到嵌入式系统都有展示他的实力,这篇博文介绍得很全面了!

    有17位网友表示赞同!

SQLite的使用
凉笙墨染

文章中提到的安全问题也很重要,特别是对于一些敏感信息。建议大家在使用 SQLite 时要注意数据的加密和权限控制措施。

    有16位网友表示赞同!

SQLite的使用
等量代换

SQLite 简单易用确实是个优点,但是功能上相对其他数据库来说还是比较有限的, 复杂的数据分析或是大规模数据处理时就需要考虑更高级的数据库系统。

    有11位网友表示赞同!

SQLite的使用
﹎℡默默的爱

我一直在做个人项目开发,这次正好看到这篇文章,来学习一下 SQLite 的用法。作者写的很清楚,受益匪浅!

    有12位网友表示赞同!

SQLite的使用
稳妥

在一些嵌入式设备中使用SQLite非常方便,因为它占用空间小,性能也比较好。这篇博文给我了一些很有用的启示。

    有18位网友表示赞同!

SQLite的使用
陌颜

对于初学者来说, SQLite 是个很好的入门数据库,它提供了很多基础的操作功能,可以帮助我们快速掌握数据库的基本概念。学习 SQLite 的路上这篇文章能指点迷津呀!

    有16位网友表示赞同!

原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/120734.html

(0)
小su's avatar小su
上一篇 2024年9月1日 下午1:24
下一篇 2024年9月1日 下午1:26

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注