2010-07-10 190 views
2

我在专用服务器上的SQL Server 2008 Express上有应用程序数据库。这对我的网络应用程序来说是不够的。将SQL Server数据库转换为MySQL

  • 是否有任何好的免费转换工具可以使我将当前的SQL Server数据库转换为我的服务器上的MySQL。
  • 我的网络应用程序能够工作吗?
+2

哪有什么我们的回答可能与所提供的信息是最后一个问题? – MDMarra 2010-07-10 00:32:45

+0

这取决于应用程序是否使用正确的标准SQL。通常SQL Server应用程序不会正确引用列名等,这可能会导致与mysql关键字的冲突。在这种情况下,你可能会遇到问题。 – txwikinger 2010-07-10 00:40:16

+0

这类问题通常需要一个编程解决方案,所以最好转移到堆栈溢出。无论它是否被移动,缺乏细节使得难以(如果不是不可能的话)正确回答。 – 2010-07-10 01:26:11

回答

6

问题中没有足够的信息来解决围绕Web应用程序工作是否相同的许多问题。

easy部分将移植架构和数据到另一个RDBMS。 SQL Server有一大套Generate Scripts命令来生成CREATE TABLE语句。您还可以通过SQL Management Studio为数据创建INSERT语句。

移动您的应用程序时遇到了挑战。

  • 什么是数据访问策略?是ADO.NET编写/构建语句,还是存储过程? LINQ to SQL也许?
  • 其中的SQL语句:它们是ANSI标准的程度,以及TSQL特定关键字上SQL的依赖程度如何?这里的答案将指出将SQL语句和逻辑移动到新的RDBMS所需的工作量。
  • 该应用程序是否依赖于MySQL没有的任何SQL Server特定功能或功能?重写代码以适合MySQL的成本是多少?
  • 希望应用程序使用集中连接字符串。这将需要改变,并希望它在web.config。如果它在数据访问代码中被硬编码,那么这是一个find + replace的游戏。

第二个问题的简短答案是,您将无法在新的RDBMS中实现您的数据并让应用程序正常工作。必须重新编译才能使用新的数据访问库(ADO.NET for MySQL)。总而言之,当然可以使其工作相同,但所需的努力并不小,并且100%依赖于代码。

alt text alt text

相关问题