我目前有一个Access数据库。有一个后端,有多个用户使用这个数据库和他们自己的前端。数据的大小非常小;但是有几种形式一直在使用。
我需要将数据迁移到MySQL。我应该继续使用Access前端还是编写我自己的c#前端?为什么一个人比另一个好?
答案 0 :(得分:7)
我认为你们都要么完全疯狂,要么不知道有关Access的诅咒。
当然,SQL Server的升迁工具比升级到MySQL的任何可用内容更容易使用。但是升级的难度不应该推动你选择后端,因为它是一次性的选择。根据最适合您的方式选择后端数据库。虽然SQL Server Express是免费的,但它有许多MySQL本身没有的限制。
正如我在评论中所说,您可以通过为MySQL数据库定义DSN并在Access文件菜单上使用EXPORT命令将Access表导出到MySQL。结果不一定是完美的,因此您可能必须调整结果,截断MySQL表,然后在MySQL表全部到位后插入实际数据。是的,这比SQL Server升迁工具更多,但它仍然很容易做到。
这不是你必须先做的事,你也不必多次这样做。
如果MySQL是您应用的首选数据库引擎,那么请继续使用它。完全使用SQL Server是因为更加精心的升尺寸工具实际上是尾巴摇摆不定的情况!
答案 1 :(得分:4)
我建议迁移到SQL Server而不是MySQL。您可以简单地将Access数据库升迁到SQL Server,并让它处理繁重的数据。访问表单可以继续作为您的前端。
Per David Fenton在下面的评论中说:“升级是一次性操作,这样做的好处不应该推动后端的选择。”我认为这是一个很好的论据。我推荐使用SQL Server以便于升级和使用现有工具,但这种反驳让MySQL重新回到了我的面前。
答案 2 :(得分:3)
重写前端将使这个项目更复杂,而不是更简单。首先迁移后端,然后评估是否需要重写UI。您可能需要进行一些代码更改以使Access适应新的后端数据源,但这比完全重写要少得多。
答案 3 :(得分:0)
如果迁移到SQL Server而不是MySQL,则可以使用C#开发前端,并使用内置的LINQ功能来访问数据。使用Visual Basic for Applications比Access前端更容易和令人满意; - )