SQLite第 1 章:介绍

什么是 SQLite?

SQLite 是一个关系数据库管理系统。它最初是在 2000 年 8 月设计的。它是一个开源软件。

  • SQLite 非常轻量级;它小于 500Kb 大小。与 SQL Server 或 Oracle 等其他数据库管理系统不同。
  • SQLite 不是客户端-服务器数据库管理系统:它是一个内存库,您可以调用它并直接使用它,无需安装和配置。
  • 典型的 SQLite 数据库将包含在计算机磁盘存储上的单个文件中,所有数据库对象(表、视图、触发器等)都包含在该文件中,不需要专用服务器。

SQLite 性能 - 为什么以及何时使用 SQLite?

何时使用 SQLite:

  • 每当您需要轻量级数据库时,如果您正在为电视、手机、相机、家用电子设备等设备开发嵌入式软件,那么 SQLite 是一个不错的选择。
  • 如果您想管理网站的复杂会话信息,SQLite 可以处理低到中等流量的 HTTP 请求。
  • 当您需要存储文件存档时,与常规 ZIP 存档相比,SQLite 可以生成更小尺寸的存档和包含大量元数据。
  • 如果要对应用程序中的某些数据进行一些处理,可以使用 SQLite 作为临时数据集。您可以将数据加载到 SQLite 内存数据库中,并按照您想要的方式进行查询。您可以按照您希望的方式将数据提取回您的应用程序。
  • 它为您提供了一种简单有效的方法来处理数据,而不是在内存变量内部进行数据处理。例如,如果您正在开发一个程序,并且您有一些想要对其进行计算的记录。然后你可以创建一个 SQLite 数据库并在 那里插入记录,只需一个查询,你就可以选择记录并直接对它们进行计算。
  • 当您需要一个用于学习和培训目的的数据库系统时,SQLite 非常适合。正如我们所解释的,不需要安装和配置。只需将 SQLite 库复制到您的计算机中即可创建数据库。

为什么要使用 SQLite:

  • 它完全免费——SQLite 是一个开源软件,使用它不需要许可证。
  • SQLite 是跨平台的数据库管理系统;它可以在广泛的不同平台上使用,如 Windows、Mac OS、Linux 和 Unix。它还可以用于许多嵌入式操作系统,如 Symbian 和 Windows CE。
  • SQLite 提供了一种有效的数据存储方式,列的长度是可变的,不是固定的。所以 SQLite 只会分配一个字段需要的空间。例如,如果您有一个 varchar(200) 列,并且在其上放置了 10 个字符的长度值,那么 SQLite 将仅为该值分配 20 个字符的空间,而不是整个 200 个空间。
  • 范围广泛的 SQLite API – SQLite 为广泛的编程语言提供 API,例如 .Net 语言(Visual Basic、C#)、PHP、Java、Objective C、Python 和许多其他编程语言。
  • SQLite 非常灵活。
    • SQLite 变量是动态类型的,这意味着变量的类型在被赋值之前不会被确定,而不是在声明中。
    • INSERT ON CONFLICT REPLACE 语句。使用此语句,您可以告诉 SQLite 尝试对表进行插入,如果找到具有相同主键的行,则使用插入值中的值更新它们。
    • 使用 SQLite,您可以同时在同一个会话中处理多个数据库。只需附加这些数据库,然后您就可以同时访问所有数据库的对象(表、视图等)。

SQLite 限制和不支持的功能

以下是 SQLite 中不受支持的功能和限制的列表:

  • SQLite 既不支持 RIGHT OUTER JOIN 也不支持 FULL OUTER JOIN。它仅支持 LEFT OUTER JOIN。
  • ALTER table 语句的限制:使用 SQLite 中的 ALTER TABLE 语句,您只能添加列或重命名表(我们将在以下教程中看到)。但是,您不能执行以下操作:
    • 更改列。
    • 删除一列。
    • 添加约束。
  • VIEW 是只读的——您不能将 INSERT、DELETE 或 UPDATE 语句写入视图。但是,您可以在视图上创建触发器并在其中执行 INSERT、DELETE 或 UPDATE 语句。
  • GRANT 和 REVOKE 命令未在 SQLite 中实现。SQLite 中只实现了普通的文件访问权限。这是因为 SQLite 读取和写入磁盘文件,与其他数据库管理系统不同。
  • 触发器——正如我们将在即将到来的教程中看到的,SQLite 只支持 FOR EACH ROW 触发器,它不支持 FOR EACH STATEMENT 触发器。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值