系统软件 应用软件 图形软件 行业软件 安全相关 网络软件 聊天软件 影音软件 教育教学 驱动工具 编程开发 插件下载 源码下载 APP电脑版 其他类别

SQLite

v3.34.0

SQLite

  • 软件大小:2.52 MB
  • 软件语言:简体中文
  • 软件授权:共享软件
  • 软件类型:编程开发
  • 软件平台:WinAll
  • 更新时间:2022-01-27 15:11
  • 星级评分:4级
  • 软件官网:https://www.downza.com/
好评:50%顶一个
坏评:50踩一个

SQLite简介

SQLite是一款多功能进程内库,可实现自包含的,无的,零配置的事务型SQL数据库引擎;该软件的代码在公共领域,因此可以免费用于任何目的,无论是商业还是私人用途;为Windows PC下载SQLite脱机安装程序安装程序位,SQLite是世界上部署最广泛的数据库,其应用程序数量超出我们的想象,其中包括几个备受瞩目的项目;SQLite是一种C语言库,实现了一个 小型、 快速、 自包含、 高可、 功能齐全的SQL数据库引擎;SQLite内置于所有手机和大多数计算机中,并捆绑在人们每天使用的无数其他应用程序中;SQLite文件格式稳定,跨平台且向后兼容,开发人员保证在2050年之前保持这种格式;SQLite数据库文件通常用作在系统之间传输丰富内容的容器, 以及用作数据的长期归档格式活跃使用的SQLite数据库超过1万亿;SQLite源代码 是公共领域的,任何人都可以免费使用于任何目的!

SQLite是一个多功能的进程内库,可以实现自包含、无、零配置的事务型SQL数据库引擎;软件的代码属于公共领域,因此可以免费用于任何目的,无论是商业目的还是私人目的。下载SQLiteWindows PC脱机安装程序的安装程序位。SQLite是世界上部署最广泛的数据库,它的应用数量超出了我们的想象,包括几个备受瞩目的项目。SQLite是一个C语言库,实现了一个小、快、自包含、高可靠、功能全的SQL数据库引擎。SQLite内置于所有手机和大多数电脑中,并与人们每天使用的无数其他应用程序联系在一起;SQLite文件格式稳定,跨平台,向后兼容,开发者保证2050年前保持这种格式;SQLite数据库文件通常用作在系统之间传输丰富内容的容器,以及数据的长期存档格式。SQLite数据库活跃使用超过1万亿;SQLite源代码在公共领域,任何人都可以免费用于任何目的!

SQLite软件功能

即使在系统崩溃和电源故障之后,事务也是原子的、一致的、隔离的和持久的(ACID)。

零配置-不需要设置或管理。

使用部分索引和通用表表达式等高级功能完成SQL实现。(省略功能)

完整的数据库存储在单个跨平台磁盘文件中。非常适合应用文件格式。

支持千兆字节大小的数据库和千兆字节大小的字符串和Blob。

更少的代码消耗:完全配置的内存少于500KiB,如果省略可选功能,则更少。

简单易用的API。

用ANSI-C编写..包括TCL绑定。许多其他语言的绑定是单独提供的。

100%分支测试覆盖率的注释源代码。

作为单个ANSI-C源代码文件提供,该文件易于编译,因此易于添加到更大的项目中。

自给自足:没有外部依赖性。

跨平台:开箱即用支持Andid、BSD、iOS、Linux、Mac、Solas、VxWorks和Windows,便于移植到其他系统。

它来自公共领域。把它用于任何目的。

它有一个命令行界面(CLI)客户端,可用于管理SQ Lite数据库。

SQLite软件特色

SQLite是一个紧凑的库。启用所有功能后,库大小可以小于600KiB,具体取决于目标平台和编译器优化设置。

代码比较大。一些编译器优化(例如,激进的函数内联和循环展开可能会使目标代码变大)。

内存使用和速度之间存在权衡。SQLite一般来说,为你提供的内存越多,它运行的速度就越快。

然而,即使在低内存环境中,性能通常也相当好。

根据使用情况,SQLite可能比直接文件系统I/O更快。

SQLite在每次发布之前都经过了仔细的测试,并以其出色的性能而闻名。

大多数SQLite源代码纯粹是为了测试和验证。

自动化测试套件可以运行数百万个测试用例,涉及数亿个单独的SQL。

并实现100%的分支测试覆盖率。

SQLite优雅地响应内存分配失败和磁盘I/O错误。

即使由于系统崩溃或电源故障而中断,事务也是ACID。

所有这些都通过使用特殊测试工具(模拟系统故障)的自动测试来验证。

当然,即使经过所有这些测试,仍然有错误。

但与一些类似的项目(尤其是商业竞争对手)不同

SQLite对所有错误都是开放和诚实的,并提供了错误列表和每分钟代码更改的时间顺序。

SQLite代码库由一组全职国际开发人员提供支持,他们致力于SQLite。

开发者将继续扩展SQLite的功能,提升其能力。

同时保持与已发布的接口规范、SQL语法和数据库文件格式的向后兼容性。

源代码对任何想要的人来说都是绝对免费的,但是它也可以提供专业的支持。

SQLite该项目于2000年5月9日开工。

未来总是很难预测,但开发者的目标是在2050年之前支持SQLite。

做决定的时候要牢记这个目标。

我们的开发人员希望您发现SQLite有用,并敦促您好好利用它:创建快速、可靠、易用的高质量产品。

当你原谅别人时,寻求自己的原谅。就像你免费领取SQLite一样,你也可以免费提供来还债。

SQLite使用说明

SQLite无法直接与客户端/SQL数据库引擎(如MySQL、Oracle、PostgreSQL或SQL Server)进行比较,因为SQLite试图解决其他问题。

客户机/SQL数据库引擎努力实现企业数据的共享存储库。它们强调可伸缩性、并发性、集中化和控制。SQLite致力于为单个应用程序和设备提供本地数据存储。SQLite强调经济、高效、可行和简单。

SQLite不与客户端/数据库竞争。SQLite与fopen()竞争。

SQLite运行良好

嵌入式设备和物联网

因为SQLite数据库不需要管理,所以它可以在必须在没有专家手动支持的情况下操作的设备中很好地工作。SQLite非常适合手机、机顶盒、电视、游戏机、相机、手表、厨具、恒温器、汽车、机床、飞机、遥感器、无人机、医疗设备和机器人:东西”。

客户端/数据库引擎被设计为位于网络核心的精心维护的数据中心。SQLite也可以在这里工作,但是SQLite也在网络边缘蓬勃发展,为那些已经不可或缺的应用提供快速可靠的数据服务,同时也是独立的。

应用程序文件格式

SQLite通常用作桌面应用程序的磁盘文件格式,如版本控制系统、财务分析工具、媒体编目和编辑套件、CAD软件包、记录保存程序等。传统的文件/打开调用sqlite3_open()被附加到数据库文件中。当应用程序内容被修改时,更新将自动发生,因此文件/保存菜单选项将变得多余。您可以使用替代应用编程接口来实现文件/另存为菜单选项。

该方法具有许多优点,包括改进的性能、降低的成本和复杂性以及改进的性能。有关更多信息,请参考技术说明“aff_short.html”和“appfileformat.html”以及“fasterthanfs.html”。这个用例与下面的数据传输格式和数据容器用例密切相关。

网站

SQLite可以很好的作为大部分中低流量网站(也就是大部分网站)的数据库引擎。SQLite可以处理的网络流量取决于网站使用其数据库的程度。一般来说,每天点击量低于10万的任何网站都可以在SQLite上正常运行。每天10万次点击是保守估计,不是硬性上限。SQLite已经被证明能够处理10倍的流量。

SQLite网站(https://www.sqlite.org/)当然使用SQLite本身。截至撰写本文(2015年),它每天处理约40万到500万个HTTP请求,其中约15-20%是动态页面联系人数据库。每个网页的动态内容大约使用200个SQL。此设置在单个虚拟机上运行,该虚拟机与23台虚拟机共享一个物理机,但在大多数情况下,平均负载保持在0.1以下。

数据分析

懂SQL的人可以使用sqlite3命令行shell(或各种第三方SQLite访问器)来分析大型数据集。原始数据可以从CSV文件导入,CSV文件可以进行切片和切块,生成大量的摘要报告。您可以使用用Tcl或Python(都内置于SQLite)或R或其他语言(使用现成的适配器)编写的简单脚本进行更复杂的分析。可能的用途包括网站日志分析、体育统计分析、编程索引编制和实验结果分析。许多生物学研究者都是这样使用SQLite的。

当然,使用企业客户端/数据库可以做同样的事情。SQLite的优点是安装使用方便,生成的数据库是单个文件,可以写入USB记忆棒,也可以通过邮件发送给同事。

缓存企业数据

许多应用程序使用SQLite作为企业RDBMS相关内容的缓存。由于现在大多数查询都是针对本地缓存进行的,并且避免了网络往返,这就减少了延迟。它还减少了网络和数据库的负载。在许多情况下,这意味着客户端应用程序可以在网络中断期间继续运行。

结束数据库

系统设计人员报告说,使用SQLite作为数据中心中运行的应用程序的数据存储,或者换句话说,使用SQLite作为特定于应用程序的数据库的基本存储引擎已经成功。

在这种模式下,整个系统仍然是客户端/:客户端通过网络向发送请求并获得回复。但是,客户端请求和响应不是高级SQL的特定应用程序,而是发送通用SQL并获取原始表内容。将请求转换为多个SQL查询、收集结果、后处理、过滤和分析,并且只构造基本的高级回复。

开发人员报告说,在这种情况下,SQLite通常比客户端/SQL数据库引擎更快。数据库请求由序列化,因此并发不是问题。并发性也可以通过“数据库碎片”来提高:不同的子域使用不同的数据库文件。例如,每个用户可能有一个单独的SQLite数据库,因此可以同时处理数百或数千个连接,但每个SQLite数据库仅由一个连接使用。

数据传输格式

因为SQLite数据库是一个具有明确定义的跨平台格式的单个压缩文件,所以它通常用作将内容从一个系统传输到另一个系统的容器。发送方将内容收集到SQLite数据库文件中,并将文件传输给接收方,接收方根据需要使用SQL提取内容。

SQLite数据库有助于系统之间的数据传输,即使端点具有不同的字长和/或字节顺序。数据可以是大型二进制Blob、文本和小型数值或布尔值的复杂组合。通过添加新的表和/或列,可以在没有传统接收器的情况下轻松扩展数据格式。SQL查询语言意味着接收者不需要立即解析整个传输,而是可以根据需要查询接收到的内容。数据格式是“透明的”,也就是说,它可以很容易地被许多供应商提供的各种通用开源工具解码,供人类查看。

文件和/或数据容器

如何使用SQLite中存档idea程序的SQLite作为ZIP压缩文件或压缩包的替代品。与等效的ZIP存档相比,SQLite中存储的文件存档仅略大,在某些情况下实际上更小。SQLite Archive具有增量和原子更新功能,可以存储更丰富的元数据。

除了传统的tarball和ZIP存档,化石2.5及更高版本还提供了SQLite存档文件作为下载格式。sqlite3.exe命令行shell 3 . 22 . 0版和稍后将创建、列出或解压缩的SQL使用archive.archive命令。

SQLite很好的解决了各种内容需要捆绑成一个自成一体的自描述包通过网络传输的情况。以定义明确、跨平台且稳定的文件格式进行编码。编码是有效的,接收者可以提取一小部分内容,而无需读取和解析整个文件。

SQL存档可以用作分发到许多客户端的软件或内容更新的分发格式。例如,这种想法的变体可以用于将电视节目指南传输到机顶盒,并向车辆导航系统发送空中更新。

临时磁盘文件的替换

许多程序使用fopen()、fread()和fwte()来创建和管理本地格式的数据文件。SQLite可以很好地替换这些临时数据文件。与直觉相反,SQLite在读写磁盘内容方面可能比文件系统更快。

或者内部临时数据库。

对于具有大量必须以多种方式进行筛选和分类的数据的程序,通常更容易和更快地将数据加载到内存中的SQLite数据库中,并使用带有join和ORDER BY子句的查询来提取数据。所需的形式和顺序,而不是试图手工编码相同的作品。以这种方式在内部使用SQL数据库也为程序提供了更大的灵活性,因为可以添加新的列和索引,而无需对每个查询重新编码。

在演示或测试期间替换企业数据库。

客户端应用程序通常使用一个公共数据库接口,该接口允许连接到各种SQL数据库引擎。在支持的数据库中包含SQLite并与客户端SQLite引擎静态链接是有意义的。这样,客户端程序可以单独与SQLite数据文件一起使用,进行测试或演示。

教育和培训

因为它易于设置和使用(安装非常简单:只需将sqlite3或sqlite3.exe可执行文件复制到目标计算机并运行它),SQLite已经成为一个很好的数据库引擎,可以用来教授SQL。学生可以很容易地创建任意数量的数据库,并通过电子邮件将数据库发送给教师进行评论或评分。模块化、带注释和文档化的SQLite代码可以作为对研究RDBMS实现感兴趣的高级学生的良好基础。

实验语言扩展

SQLite的简单模块化设计,使其成为新型实验数据库语言功能或思想原型设计的良好平台。

客户端/关系数据库管理系统可能工作得更好的情况

客户端/应用程序

如果很多客户端程序通过网络向同一个数据库发送SQL,请使用客户端/数据库引擎,而不是SQLite。SQLite将在网络文件系统上工作,但由于与大多数网络文件系统相关的延迟,性能不会很好。同样,文件锁定逻辑在许多网络文件系统实现中是错误的(在Unix和Windows上)。如果文件锁定工作不稳定,两个或多个客户端可能会试图同时修改同一数据库的同一部分,从而导致损坏。SQLite无法停止此问题,因为它是由底层文件系统实现中的错误引起的。

一个很好的经验法则是,在通过网络直接访问同一个数据库(没有中间应用程序)和从多台计算机同时访问同一个数据库时,避免使用SQLite。

很多网站

SQLite通常可以作为网站的数据库后端。但是,如果网站是写密集型或繁忙的,并且需要多个,您可以考虑使用企业客户端/数据库引擎,而不是SQLite。

大型数据集

SQLite数据库的大小限制为281 TB(2个47字节,128 TB)。即使您可以处理更大的数据库,SQLite也会将整个数据库存储在磁盘文件中,许多文件系统将最大文件大小限制为小于此大小。因此,如果您正在考虑这样大小的数据库,最好考虑使用客户机/数据库引擎,该引擎将其内容分布在多个磁盘文件中,甚至分布在多个卷上。

高并发性

/[/k0/在很多情况下,这不是问题。作家排队。每个应用程序都会很快完成其数据库的工作并继续运行,锁不会持续超过几十毫秒。但是有些应用需要更多的并发,这些应用可能需要寻求不同的解决方案。

选择正确的数据库引擎列表。

数据是否通过网络与应用程序分离?→选择客户端/

关系数据库引擎充当数据过滤器来减少带宽。因此,最好将数据库引擎和数据保持在同一个物理设备上,这样高带宽的引擎和磁盘之间的链接就不必穿越网络,而只需要低带宽的应用和引擎之间的链接。

但是SQLite内置在应用程序中。因此,如果数据和应用程序位于不同的设备上,则需要带宽更高的引擎到磁盘链路来穿越网络。很管用,但不是最好的选择。因此,当数据和应用程序位于不同的设备上时,通常最好选择客户端/数据库引擎。

注意:在这个规则中,“应用程序”是指发布SQL的代码。如果“应用程序”是一个应用程序,并且内容和应用程序位于同一台物理计算机上,SQLite可能仍然适用,即使最终用户和另一个网络之间的距离相同。

很多兼职作家?→选择客户端/

如果许多线程和/或进程需要同时写入数据库(它们不能排队以供并发使用),那么最好选择支持该功能的数据库引擎,这总是意味着客户端/数据库引擎。

SQLite每个数据库文件一次只支持一个编写器。但是在大多数情况下,一个写事务只需要几毫秒,所以多个写入器可以简单地流式传输它。SQLite将处理更多很多人怀疑的写并发。然而,客户端/数据库系统通常可以处理比SQLite更多的写并发,因为它有一个长时间运行的进程来协调访问。

大数据?→选择客户端/

如果您的数据增长到您不舒服或无法放入单个磁盘文件的大小,您应该选择SQLite以外的解决方案。假设您可以找到支持281 TB文件的磁盘驱动器和文件系统,SQLite最多支持281 TB数据库。即便如此,当内容的大小似乎可能达到TB级别时,最好考虑使用集中式客户端/数据库。

否则→选择SQLite!

SQLite对于写入器并发性低且小于TB的设备的本地存储,几乎总是更好的解决方案。SQLite速度快,不需要任何配置或。它让事情变得简单。SQLite“管用”。

收起介绍展开介绍
  • 安卓合集
  • 软件合集
  • 浏览器
  • 电脑管家
  • 安卓游戏
更多 >> 安卓合集安卓合计

热门推荐

装机必备软件