我正在升级一家珠宝店的库存系统,该系统最初是使用 MS Access 构建的。该应用程序存储项目、客户、供应商,并显示有关存储项目的数据。应考虑使用报告工具来生成可打印格式的项目报告。

该系统应该用 C# 构建,但我还没有决定应该用于该应用程序的数据库引擎。你有什么建议?我想到了 SQLite,但我需要记住,从旧数据库到新更新数据库的迁移项目是必须的。由于它最初是使用 MS Access 构建的。我应该坚持使用 MS Access 并用它构建我的应用程序吗?

编辑:这是一个单用户系统。

有帮助吗?

解决方案

对于 Microsoft 生态系统中的单用户桌面应用程序,请考虑 SQL Server 精简版 而不是成熟的服务器产品。以下是微软概述的相关部分:

Microsoft SQL Server 2005 紧凑型 版本 (SQL Server Compact Edition) 专为需要 重量轻,在过程中关系 数据库解决方案 可以开发的应用程序和 部署在桌面上以及 移动设备。SQL Server 精简版 Edition Runtime 可用于开发 并在桌面上部署应用程序。

SQL Server Compact Edition是一种功能强大但轻量级的关系数据库引擎,可以通过支持熟悉的结构化查询语言(SQL)语法,并提供与SQL Server一致的开发模型和API,可以轻松开发桌面应用程序。

它的一些限制(例如,没有嵌套事务)在 它的维基百科文章 和比较 其他嵌入式数据库比比皆是 (据我所知,对于最佳选择尚未达成共识)。

至少一个SO问题 解决从 Access 和 这里有一张海报 指向 SQL Server CE 工具列表的链接,包括各种迁移软件。

其他提示

SQL Server Express的是一个很好的选择,如果你想坚持MS技术。由于您的转换将是一关,你可以把它以不同的方式 - 无论是查找用于数据库转换工具(好像有一些人左右),甚至写自己的,即使用DTS,SSIS或手工码,如果需要。

由于您使用C#,SQL Server将似乎是一个合乎逻辑的候选人; MySQL是也是很好的选择。

我不会考虑使用MS-Access或SqlLite在生产应用程序;太多的缺点/限制 - 见的所有这些东西获取例子。

这个决定取决于很多因素。比如有多少并发用户将访问此应用程序(Access 不允许超过 5 个)。

  • 数据库有多大?
  • 您预计会有多少增长?
  • 除了基本的数据存储之外,您还需要哪些功能?
  • 预算是多少?

这些问题的答案将帮助您选择合适的产品。那里有很多不同的。到目前为止,我对 SQL Server 和 MySQL(免费)非常满意。我会避开 Oracle,尽管我发现它使用起来很麻烦,而且通常是一堆垃圾。

[编辑]

根据您最后的评论,我会选择具有高级服务的 SQL Server Express http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=b448b0d0-ee79-48f6-b50a-7c4f028c2e3d. 。该产品仍然免费。唯一的限制是数据库不能大于 4 GB 或类似大小。我希望这有帮助。

看一看的PostgreSQL, http://www.postgresql.org/

这是免费的,快速的和具有提供者.NET

SQL服务器,那么你可以添加报告服务,以及从接入迁移路径应该很容易。你甚至可以开始与Express版本。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top