写点什么

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:563666
用户头像

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

关注

评论

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

Ceph在手天下我有!

穿过生命散发芬芳

Ceph 7月月更

BigQuery和Snowflake谁更适合你?两大数据仓库8个角度逐一对比

雨果

数据中台 数据仓库 DaaS DaaS数据即服务 数据即服务

数据治理新动态:欧盟发布数据治理研究报告,对国内有何影响

雨果

数据治理

力扣第三题——无重复字符的最长子串

为自己带盐

力扣

物联网技术在物联网产业格局的分布与应用

AIRIOT

低代码 物联网 低代码,项目开发

前端之路React学习笔记

恒山其若陋兮

7月月更

融云推出实时社区解决方案,垂直兴趣社交「高级玩家」上线

融云 RongCloud

社交网络 即时通讯IM

关于研发效能(41/100)

hackstoic

团队管理

Python网页解析库:用requests-html爬取网页

和牛

测试

连续最大和与判断回文

未见花闻

7月月更

基于 SPICE 协议的硬编推流整合方案在云游戏中的应用

字节跳动视频云技术团队

视频编解码 云游戏

【Docker 那些事儿】容器监控系统,来自Docker的暴击

Albert Edison

Docker 云计算 Kubernetes 云原生 7月月更

开源轻量级 IM 框架 MobileIMSDK v6.2 发布

JackJiang

网络编程 Netty 即时通讯 im开发 开源im

论文领读|面向机器翻译的多语言预训练技术哪家强?最新进展一睹为快!

澜舟孟子开源社区

人工智能 自然语言处理 机器学习 后端 机器翻译

接口调试还能这么玩?

Liam

前后端分离 Postman API 接口开发 前后端

2022年移动应用运营增长洞察白皮书:流量红利消退时代的“破局”之道

科技汇

文档协同工具推荐

Baklib

银行业数据安全建设专题分析

易观分析

银行安全

话实践,行实干,成实事:“巡礼”数字化的中国大地

脑极体

云服务器ECS老用户专享,10余款实例新购低至3.6折

阿里云弹性计算

阿里云 云服务器 ECS

50个名额限量开放|带着OceanBase年度发布会的消息走来了!

OceanBase 数据库

Paper Time 回顾|MB2:为自治数据库建立行为模型

OceanBase 数据库

网易游戏 Flink SQL 平台化实践

Apache Flink

大数据 flink 编程 流计算 实时计算

百度、阿里、腾讯,谁最先倒下?

雨果

数据中台 数据服务

我有 7种 实现web实时消息推送的方案,7种!

程序员小富

Java springboot websocket 消息系统

用代码画时序图!简直太爽了

冉然学Java

Java 代码 UML

面试官:Redis&MySQL的三种缓存更新策略是怎样的?

Java全栈架构师

Java MySQL redis 程序员 程序人生

教你使用CANN将照片一键转换成卡通风格

华为云开发者联盟

人工智能 CANN 昇腾 卡通

C2B模式下优惠券架构演进

转转技术团队

Java 架构 Elastic Search

STEPN链游系统开发模式详解(运动赚钱模式)

开发微hkkf5566

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