首页 / 知识
可以在网络上运行的.net嵌入式数据库
2023-04-11 13:59:00

Embedded Database for .net that can run off a network我曾经(现在还在)正在寻找要在.net(c#)应用程序中使用的嵌入式数据库。 注意事项:应用程序(或至少数据库)存储在网络驱动器上,但一次只能由1个用户使用。 现在,我的第一个想法是SQL Server Compact版本。 确实很好地集成了它,但是它不能在网络上运行。 Firebird似乎有相同的问题,但是.net集成似乎并不是真正的一流产品,并且很大程度上未记录在案。 Blackfish SQL看起来很有趣,但是没有试用.net版本。 定价还可以。 还有什么其他建议可以与.net很好地运行并且可以在不需要实际安装服务器软件的情况下在网络上运行? 在阅读您的问题时,我想到了SQLite,而且我很确定,如果您一次只能限制1个用户,那么可以从网络驱动器访问它。 .NET上的SQLite-3分钟即可启动并运行 我建议使用Advantage Database Server(www.advantagedatabase.com)。它是一个成熟的嵌入式数据库,具有强大的支持,除了.NET之外,还可以从许多开发语言中进行访问。"本地"版本是免费的,它以DLL的形式在您的应用程序中运行,不需要在服务器/网络共享上进行安装,并且支持所有主要的数据库功能。您可以将DB和/或应用程序文件全部存储在网络上;不在乎数据在哪里。 免责声明:我是ADS研发小组的工程师。我保证,它会摇晃:) 您可以使用嵌入式的firebird,它只是随应用程序一起提供的dll。 关于未记录的事情,这不是真的,firebird .NET驱动程序实现了ADO接口,因此,如果您知道ADO可以使用Firebird,则基本上可以使用FBConnection代替SQLConnection,等等,但是我的建议是编写一个数据访问层,仅在代码上使用接口,如下所示:
这个例子非常简单,但是您将不需要更多。 我们将firebird用于所有应用程序而没有任何问题,您至少应该尝试一下。 听起来ADO / Access非常适合您的需求。它已烘焙到MS堆栈中,经验丰富,并且是多用户的。 您可以通过编程方式创建一个数据库,如下所示:
然后,您可以使用标准ADO.NET方法与数据库进行交互。 这里的帖子有点晚了。.已经提到了VistaDB,但是我想指出,VistaDB是100%受管的(因为您的帖子被标记为.net)。它可以从共享网络驱动器运行,并且已部署1MB xcopy。 自您提到SQL CE以来,我们还支持T-SQL语法和数据类型(实际上比SQL CE还要多),并且具有可更新的视图,TSQL Procs和SQL CE中缺少的其他内容。 查看VistaDB。他们有一个非常好的产品,服务器版本(3.4)是Beta版,非常接近发布。 为什么不使用SQL Server 2005 Express版? 它实际上取决于"嵌入式"的含义-但是您可以将SQLServer2005E与您的应用程序一起重新分发,并且用户永远不必知道它的存在。 在应用程序中嵌入SQL Server Express 将SQL Server Express嵌入到自定义应用程序中 我很困惑 您需要一个嵌入式数据库-数据库本身存储在服务器上。转换为将数据文件存储在网络共享上。然后,您说SQL Compact Edition不起作用...除非查看该文档,否则:
Word文档: 在第8页上,"网络共享上的数据文件存储"旁边有一个漂亮的绿色大勾号。 因此在我看来,您的第一个想法是正确的。 您是否考虑过OODB?从各种开放源代码替代方案中,我建议db4o(对不起,自我推广:)可以在嵌入式或客户端/服务器模式下运行。 最好 阿德里亚诺 还有瓦伦蒂娜。当我从事一些Real Basic项目时,会涉及到该产品。 RB版本非常好。 这个问题现在很古老了,并且发生了很多变化。 对于我的特定目的,LiteDB是选择的选项。 它是开源的,并具有GitHub Repository。 除此之外,SQLite基本上是嵌入式数据库的行业标准。 有尝试将代码移植到.NET,但主要用例涉及本机库(例如sqlite Nuget软件包)和/或.NET P / Invoke包装器,例如Microsoft.Data.SQLite。 |
最新内容
相关内容
python代码如何在命令行运行
python代码如何在命令行运行,代码,培训,路径,空格,文件,下面,以上,目录,更多,内容,我们在编写python代码时,可以在交互模式下运行代码,也可以用python如何操作mysql数据库
python如何操作mysql数据库,培训,标准,项目,密码,数据库,接口,表字,操作,用户,机子,Python标准数据库接口为PythonDB-API,PythonDB-API为开发python模块能优化Python的运行速度
python模块能优化Python的运行速度吗?,代码,平台,培训,官网,环境,工作,系统,模块,程序,语言,今天介绍下Psyco模块,Psyco模块可以使你的Pythonpythonpython是如何编译运行的
pythonpython是如何编译运行的,培训,代码,工作,程序,字节,语言,链接,机器,时候,问题,这里的解释执行是相对于编译执行而言的。我们都知道,使用pythonpipenv的环境运行
pythonpipenv的环境运行,环境,项目,培训,环境变量,实例,命令,以上,以下,文件,方法,pythonpipenv的环境运行1、说明直接运行pipenvshell并不会关于.net 1.1:寻找在C#中进行“网络
关于.net 1.1:寻找在C#中进行“网络使用”的最佳实践,关于.net 1.1:寻找在C#中进行“网络使用”的最佳实践,驱动器,异常处理,命令行,断关于c#:能否让Memcached在Windows(x6
关于c#:能否让Memcached在Windows(x64)64位环境中运行?,关于c#:能否让Memcached在Windows(x64)64位环境中运行?,运行,设置,托管,有谁知道,CiPhone Web应用程序,模板,框架?
iPhone Web应用程序,模板,框架?,iPhone Web应用程序,模板,框架?,应用程序,站点,用于,网页,iPhone web applications, templates, framework关于体系结构:我应该如何构建Java应
关于体系结构:我应该如何构建Java应用程序,将类放在哪里?,关于体系结构:我应该如何构建Java应用程序,将类放在哪里?,应用程序,支持,困惑,在Web应用程序上执行压力测试?
在Web应用程序上执行压力测试?,在Web应用程序上执行压力测试?,应用程序,主页,写了,简单,Performing a Stress Test on Web Application我应该如何将文件加载到Java应用程
我应该如何将文件加载到Java应用程序中?,我应该如何将文件加载到Java应用程序中?,文件,应用程序,加载,文本,How should I load files i使用 MS Access 作为 MySQL 数据库
使用 MS Access 作为 MySQL 数据库后端的前端的问题?,使用 MS Access 作为 MySQL 数据库后端的前端的问题?,数据库,用户,文件,编写,Iss