【AICon】探索RAG 技术在实际应用中遇到的挑战及应对策略!AICon精华内容已上线73%>>> 了解详情
写点什么

SQLite 移植到了.NET

  • 2009-08-09
  • 本文字数:752 字

    阅读完需:约 2 分钟

Noah Hart 将 SQLite3 移植到了 C#上。虽然此次移植版本比原始版本要慢,但是此项目可以让.NET 托管项目在不使用任何 P/Invoke 和不安全代码的情况下使用 SQLite。

C#-SQLite 被寄放在Google Code 上,是从SQLite 3.6.16 到C#的完全移植,代码版权使用 MIT License 。C#-SQLite 通过了超过 3 万个测试用例,只有 9 个没有通过。编译好的二进制 exe 文件只有 528KB,和原始版本的 506KB 差不多。性能方面要比原始的C 版本差一些,但是Hart 说他还没有对代码做任何性能优化,而且他认为目前的性能还可以接受。所有的数据单位都是行/ 秒:

Test C#-SQLite SQLite Insert 300K 1300K Select 1500K 8450K Update 60K 300K Delete 250K 700KCory Nelson 解释了为什么移植SQLite 要比其它方式更好:避免P/Invoke 带来的“速度超慢和无法移植”问题。而且C 代码“充斥着goto 语句,会使优化变得十分困难”。

很多产品-如Adobe AIR-都包含和使用了SQLite。或许C#-SQLite 最能发挥的地方是Silverlight 项目, Tim Anderson 指出

可以在微软 Silverlight 中作为本地数据库使用,保存在 isolated storage 中。

……Silverlight 不允许 P/Invoke 和不安全代码,由于原始版本的 SQLite 中使用了大量的指针,即使只有很少的 P/Invoke,不安全的代码却一定有很多。

虽然 Silverlight 是实现在.NET Framework 上的,却不包含 System.Data 命名空间,但包含了 System.Linq。

C#-SQLite 并不是 SQLite 的官方版本,Hart 也与 SQLite.org 没有任何关系。SQLite 的创造者和商标所有人 Richard Hipp,在一开始并不同意将“SQLite”包含在项目名中,但是后来同意使用C#-SQLite。

除了这个项目,还有其它一些托管数据库,比如: Perst db4o Silverlight Database System.Data.SQLite

查看英文原文: SQLite Has Been Ported to .NET

2009-08-09 20:563117
用户头像

发布了 63 篇内容, 共 23.3 次阅读, 收获喜欢 1 次。

关注

评论

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

50万条数据,解读四川两座城市数字经济发展底气(下)

易观分析

经济 四川经济

【前端每日一学】vue框架的深入学习

恒山其若陋兮

6月月更

App中快速复用微信登录授权的一种方法

Speedoooo

APP开发 微信授权 微信登录

Java设计模式学习总结

梁歪歪 ♚

设计模式

新一期HarmonyOS认证正式发布,速来围观!

HarmonyOS开发者

HarmonyOS

同心助力,战役有AI

开源社

人工智能 疫情防控

「技术人生」第8篇:如何画业务大图

阿里巴巴中间件

阿里云 云原生 技术文章

社区活动 | Apache Doris 社区长期征文活动&演讲议题征集 正式开始啦!

SelectDB

开源社区 apache doris 征文投稿 议题征集 社区活动

从“预见”到“遇见”SAE 引领应用步入 Serverless 全托管新时代

Serverless Devs

阿里云 Serverless

Fomo3D模式dapp系统开发详解

开发微hkkf5566

如何使用阿里云 CDN 对部署在函数计算上的静态网站进行缓存

Serverless Devs

Serverless 前端 前端工具

FinClip2022重要功能汇总

Speedoooo

微信小程序 APP开发 小程序容器 微信登录

OpenHarmony 3.2 Beta1版本正式发布

OpenHarmony开发者

Open Harmony

CountDownLatch

急需上岸的小谢

6月月更

三大特性,多个场景,Serverless 应用引擎 SAE 全面升级

Serverless Devs

阿里云 Serverless 微服务

金融机构等入局数字藏品;证券期货类应用用户规模达1.34亿

易观分析

金融 证券

重磅发布 | Serverless 应用中心:Serverless 应用全生命周期管理平台

Serverless Devs

面向高校 | “云原生技术应用与实践”示范课程项目开放申报

Serverless Devs

重磅!KubeEdge单集群突破10万边缘节点|云原生边缘计算峰会前瞻

华为云开发者联盟

云计算 云原生 华为云

开放银行引入第三方生态,系统风控助力事前-中风险监控

Speedoooo

数字化 开放银行 异业合作

InterpreterPattern-解释器模式

梁歪歪 ♚

设计模式

微信团队分享:微信后台在海量并发请求下是如何做到不崩溃的

JackJiang

微服务 即时通讯 im开发 微信架构

AIOps落地五大原则(一):大势所趋

BizSeer必示科技

开源生态|超实用开源License基础知识扫盲帖(上)

Orillusion

开源 WebGL 元宇宙 Metaverse webgpu

深入浅出-如何安全的传输密码

梁歪歪 ♚

加密

使用APICloud开发app的动态权限及Android平台targetSdkVersion设置教程

YonBuilder低代码开发平台

android 权限管理 APICloud

【LeetCode】划分数组使最大差为 K Java题解

Albert

LeetCode 6月月更

2022年SaaS行业十大趋势:SaaS的新机遇有哪些?

小炮

孙勇男:实时视频 SDK 黑盒测试架构丨Dev for Dev 专栏

声网

自动化测试 Dev for Dev

PC端实现运营小程序,是否能再创PC时代又一春!

Geek_99967b

小程序 小程序转app

优酷移动端弹幕穿人架构设计与工程实战总结

阿里巴巴文娱技术

技术 音视频 弹幕 视频 移动端

SQLite移植到了.NET_.NET_Abel Avram_InfoQ精选文章