硬核干货——《中小企业 AI 实战指南》免费下载! 了解详情
写点什么

SQLite——只要 3 分钟,你就可以在.NET 上创建和运行它

  • 2008-01-20
  • 本文字数:1628 字

    阅读完需:约 5 分钟

SQLite 是一个开源数据库,现在已变得越来越流行,它的体积很小,被广泛应用于各种不同类型的应用中。

什么是 SQLite?

SQLite 的官方网站上是这样定义 SQLite 的:

SQLite 是一个软件库,用于实现自包含非服务式零配置事务化的 SQL 数据库引擎。
SQLite 是一个嵌入式 SQL 数据库引擎,与其它大多数 SQL 数据库不同的是,SQLite 没有独立的服务进程。SQLite 直接读写原始的磁盘文件,一个拥有多个表、索引、触发器和视图的完整 SQL 数据库就包含在一个独立的磁盘文件中。数据库文件的格式是跨平台的,你可以在 32 位和 64 位系统之间、甚至在 Big-Endian Little-Endian (译者注:这是两种不同的字节排序方式,Big-Endian 是指一个 word 中的高位 Byte 是放在内存 word 区域的低地址处,而 Little-Endian 则与之相反) 两种不同的架构间自由地拷贝数据库,这一特性让 SQLite 成为应用文件格式的一种流行选择。SQLite 不能替代 Oracle ,但可以考虑作为 fopen() 的替代方法。
SQLite 已经是世界上布署得最广泛的 SQL 数据库引擎,被用在无以计数的桌面电脑应用中,还有消费电子设备中,如移动电话、掌上电脑和 MP3 播放器等。SQLite 的源码就放在公有领域(即 WikiPedia 的 public domain ) 中。

SQLite 最早是应用在 Linux 和 OSX 平台上的,但对数据库需求较少的 Windows 应用而言,它是替代 SQL Express 和 Access 数据库运行于.NET 之上的一个可行且实用的选择。

有一篇来自开发者 Mike Duncan 的文章,给出了一个在 3 分钟内就可将 SQLite 安装到.NET 上的指南。这个指南非常有用,读完它你就可以使用一个轻量级的数据库来处理你丢给它的许多任务。

3 分钟的指南

指南是从第一次下载 SQLite 开始的:

尽管你可以通过 SQLite 下载页获得 Windows 的通用库,但我还是打算建议你从 sourceforge 获取 SQLite 的 ADO.NET 2.0 数据提供者,我并不是说它是最高效的版本(它有一个 ADO 包装层以及附带的无用功能),但它确实是一个非常容易上手的版本,可能值得长期使用。

找出 DLL:

将找到的 DLL(System.Data.SQLite.DLL)拷贝到你的项目中,并添加引用。

下载和安装一个 SQLite GUI 工具, SQLiteMan 有一个非常出色的 windows 版本,指南上是这样说的:

我一直在使用的工具名为“SQLite Administrator”(很合适的名字,它是免费的!)有一个“甜点”——有着一个和Query Analyzer 很像的界面。如果你有兴趣的话,可以从这里 http://www.sqlite.org/cvstrac/wiki?p=ManagementTools 找到一个很大的 SQLite GUI 客户端列表。

指南的最后一步就是创建一个 SQLite 数据库:

通过 GUI,创建一个数据库并随意创建一个测试表,就会出现一个以.s3db 为尾缀的单独文件。

一旦 System.Data.SQLite.dll 被引用为.NET 项目的一部分,那就可以像在你的应用顶部写 using System.Data.SQLite 那样容易地使用它。通过使用 ADO.NET 包装层,一个参数化的查询看上去会像是这样:

string lookupValue;<br></br>using (SQLiteCommand cmd = cnn.CreateCommand())<br></br>{<br></br> for (int i = 0; i < 100; i++)<br></br> {<br></br> lookupValue = getSomeLookupValue(i);<br></br> cmd.CommandText = @"UPDATE [Foo] SET [Value] = [Value] + 1<br></br> WHERE [Customer] LIKE '" + lookupValue + "'";<br></br> cmd.ExecuteNonQuery();<p> }</p><br></br>}

数据提供者

SQLite 已经实实在在地影响到.NET 的开发,已经有很多数据提供器被用于流行的对像关系映射(O/RM, 即 Object-Relational Mapper)框架中。

LINQ 提供器允许.NET 3.5 的开发者们利用新 LINQ 框架的优势,并以 SQLite 作为后端数据存储。

SQLite 可以作为替代 Access 或 SQL Express 让数据库应用快速创建和运行起来的一个不错选择,而且因为数据库还可以同时在 Linux 和 Mac OSX 平台上使用,所以创建一个可以跨平台使用的数据库应用很容易。

查看英文原文 Up and Running with SQLite on .NET in 3 Minutes

2008-01-20 05:1820137
用户头像

发布了 90 篇内容, 共 16.5 次阅读, 收获喜欢 11 次。

关注

评论

发布
暂无评论
发现更多内容

HarmonyOS NEXT 中级开发笔记:ArkTS实现体育赛车UI交互

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发笔记:ArkTS在数据资讯类应用的开发实践

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发笔记:基于ArkTS的小说阅读器实现

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发笔记:ArkTS实现短剧播放器基础功能

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发笔记:ArkTS实现新闻头条应用列表渲染

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发笔记:ArkTS实现机酒预订应用的核心逻辑

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发笔记:ArkTS实现外语学习应用的跨设备同步功能

huafushutong

HarmonyOS NEXT

使用 Ollama 本地模型与 Spring AI Alibaba 的强强结合,打造下一代 RAG 应用

阿里巴巴云原生

阿里云 云原生

「通义灵码+X」公开课开讲啦!和赛博同桌一起完成开发任务 有奖励

阿里巴巴云原生

HarmonyOS NEXT 中级开发笔记:艺术展览类应用的ArkTS实践

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发笔记:电器管家应用ArkTS实践

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发笔记:ArkTS实现美颜自拍功能实践

huafushutong

HarmonyOS NEXT

云原生 Kafka 问卷调研启动,你的声音很重要!参与赢精美礼品!

阿里巴巴云原生

kafka 阿里云 云原生

HarmonyOS NEXT 中级开发笔记:出差日程应用ArkTS实践

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发笔记:ArkTS实现音乐播放器UI交互

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发笔记:ArkTS实现健身体操应用的核心逻辑

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发笔记:基于ArkTS的远程会议应用UI实现

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发笔记:基于ArkTS的房屋装修App实践

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发笔记:基于ArkTS的简易文件浏览器实现

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发笔记:政务办理应用的ArkTS实践

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发手记:ArkTS实现动态壁纸组件

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发笔记:动漫社团App的ArkTS实践

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发笔记:ArkTS实现日历假期组件

huafushutong

HarmonyOS NEXT

智能运维,由你定义:SAE自定义日志与监控解决方案

阿里巴巴云原生

阿里云 Serverless 云原生

「通义灵码+X」公开课开讲啦!和赛博同桌一起完成开发任务 有奖励

阿里云云效

阿里云 通义灵码

钉钉 + AI 网关给 DeepSeek 办入职

阿里巴巴云原生

阿里云 AI 网关

HarmonyOS NEXT 中级开发笔记:健康管理类应用的ArkTS实践

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发笔记:基于ArkTS的拼团电商应用实践

huafushutong

HarmonyOS NEXT

用户说:10分钟用通义灵码搞定“今天穿什么”!打开爽文世界……

阿里云云效

阿里云 云原生 通义灵码

HarmonyOS NEXT 中级开发笔记:ArkTS实现儿童早教动画交互

huafushutong

HarmonyOS NEXT

HarmonyOS NEXT 中级开发笔记:基于ArkTS的消费记账应用实践

huafushutong

HarmonyOS NEXT

SQLite——只要3分钟,你就可以在.NET上创建和运行它_.NET_Robert Bazinet_InfoQ精选文章