C# 程序中数据库的良好替代品
Posted
技术标签:
【中文标题】C# 程序中数据库的良好替代品【英文标题】:Good alternative to a database in a C# program 【发布时间】:2012-05-08 17:40:47 【问题描述】:我必须为我的工作编写一个小程序,我的职位实际上与 IT 无关,我正在为我们的个人专业用途制作这个程序。我已经在 Access 中实现了,并且运行良好,但我个人不喜欢它。
真的很简单,有一个包含大约 10 列的不同地点的列表(大约 300 个)。
这是在一个DataGridView中,当我们选择某个地方时,我们可以打印到那个地方的访问报告。
问题:我想用 C# 来做,所以我想使用一个简单的 Access 数据库,但我得到一个“OLEDB 数据库驱动程序不在系统中”或类似的东西。
我们使用受限的 WIZE 客户端,在 Windows 配置中无法更改任何内容。所以我一直在为我的数据库寻找替代方案。我可以使用简单的 XML 文件并将其存储在那里,还是有任何更简单的替代方法可以让我发出类似 SQL 的请求并在数据库中插入/删除/更新?
对不起,我的英语不是我的主要语言 :)
编辑:谢谢大家的帮助,非常感谢。我会研究 SQLite。
【问题讨论】:
对于如此少量的数据,您可以使用 XML 文档。 linqdb 【参考方案1】:您有几个轻量级 SQL/NOSQL 选项,可以在安装权限有限的机器上与 C# 一起使用:
SQLlite RavenDB SQL Server Compact Edition【讨论】:
【参考方案2】:如果您真的需要一个带有 SQL 样式查询的数据库,那么我建议您看看 SQLite。
“SQLite 是一个实现自包含、无服务器、零配置、事务性 SQL 数据库引擎的软件库。”
应该很容易设置和开始工作,您可能不需要安装任何东西。您可以从这里获得一个 ADO.NET 适配器:
http://system.data.sqlite.org
或者,您可以将信息存储在某种文件中,例如 XML 文件或 CSV 文件。
【讨论】:
SQLite 的 x86/x64 独立构建使部署应用程序变得不那么容易。 C#-SQLite 可能是更好的选择,code.google.com/p/csharp-sqlite【参考方案3】:查看 SQL Server Compact。对于解决方案部署,您不需要任何系统更改或配置。所有这些都与您的解决方案 DLL 一起提供。 数据转换示例,可能出现的问题及解决方法:SQL Server Compact 4.0 and Entity Framework
【讨论】:
【参考方案4】:如果你的应用真的很简单,你可以使用 sqlite-net 作为一个简单的对象关系映射层来管理你的对象/表,
https://github.com/praeclarum/sqlite-net
然后连接到C#-SQLite,
http://code.google.com/p/csharp-sqlite/
使用它们,您的应用程序可以“便携”(无需安装到 Windows 系统)。只需将二进制文件复制到安装了 .NET 的机器上即可。
【讨论】:
谢谢,我会调查的! 这是我的选择,非常感谢,它工作得非常好,没有网络上的错误!【参考方案5】:我不知道这些对于您的情况是否足够简单,或者您是否具有安装它们的必要访问权限,但这里有一些免费数据库。再说一次,你说你不是 IT 部门,所以设置这些可能比你想要的更进一步......
Oracle Database Express Edition 11g mysql SQL Server 2012 Express【讨论】:
我在 IT 领域,但这是我的兼职工作,因为我在大学计算机工程专业所以我很熟悉但我们不想打扰 IT在我们的工作中,他们对此一点也不友好【参考方案6】:我不想这么说,但其中一种免费的 CMS 解决方案最适合您。为您处理的 UI 和数据库。将 wordpress 视为 Intranet,我确信您的业务需要是什么。可能有一个完美的插件。这似乎是一个简单的项目,没有必要重新发明***,记住你最终可能不得不支持你的应用程序。
【讨论】:
我得到报酬来支持它,它适用于不擅长计算机的工人,所以它必须简单而且我不能在这里设置内部网,太受限了以上是关于C# 程序中数据库的良好替代品的主要内容,如果未能解决你的问题,请参考以下文章
什么是用于 create-react-app 的 webpack.DefinePlugin 的良好替代品?
Flash 10 + AS 2.0中Adobe AIR和Zinc的良好替代品