将Mdb转换为Sql Server

如何使用c#或其他语言将mdb访问文件转换为sql server? 我在msdn找到了一篇文章 。 但是,我无法理解。

谢谢。

创建SQL Server数据库,然后使用Integration Services转换数据。 在执行此操作之前,彻底检查数据库设计是有意义的。 为Jet制作的设计不一定是SQL Server的最佳设计。

编辑:我没有提到另一个显着的差异。 插入null时,Jet / ACE强制执行可为空的外键,而SQL Server遵循SQL标准,该标准要求在外键约束中忽略空值(不违反约束)。 如果您有可以为空的外键,那么我强烈建议您重新设计,以便您可以在SQL Server中使它们不可为空(例如,将列移动到新表中)。

这根本不是你可以用C#做​​的事情(除非你真的想要读取访问表的模式并使用ADO.NET命令在SQL Server中创建类似的模式)。

如果您的操作只需要执行一次,那么打开SQL Management Studio,创建一个空数据库然后右键单击它,任务和“导入数据”要容易得多,然后从向导中选择从MS Access导入SQL Server将导入结构和数据。

如果您真的想在C#中编写大量代码来“模仿”所提到的向导所做的事情并拥有一个用于不同数据库的通用工具,那么这个答案是无效的……