C# 将Access 2010转换为SQL 2008

C# 将Access 2010转换为SQL 2008,c#,sql,ms-access,sqldataadapter,C#,Sql,Ms Access,Sqldataadapter,只需编写一个工具(c#.Net 4)将现有的Access 2010数据库转换为SQL Server 2008即可。 目前,我必须转换数据类型,并手动为表和约束构建“创建”命令 那么,使用DataAdapter从Access获取模式,并在SQL Server上从DataTable创建一个包含所有构造和转换类型的表的最快方法是什么呢 OleDbDataAdapter da = new OleDbDataAdapter(accCmd); Data

只需编写一个工具(c#.Net 4)将现有的Access 2010数据库转换为SQL Server 2008即可。 目前,我必须转换数据类型,并手动为表和约束构建“创建”命令

那么,使用DataAdapter从Access获取模式,并在SQL Server上从DataTable创建一个包含所有构造和转换类型的表的最快方法是什么呢

              OleDbDataAdapter da = new OleDbDataAdapter(accCmd);
              DataTable accSchema = new DataTable();
              da.FillSchema(accSchema, SchemaType.Source);
              //now create db table at sql server from accSchema
谢谢你的帮助。
Gpx

您确定不能使用现有工具吗?省去了重新发明轮子的麻烦


您确定不能使用现有工具吗?省去了重新发明轮子的麻烦


我过去在升级access应用程序时使用过它,它做得很好


我过去在升级access应用程序时使用过它,它做得很好


你不能使用SSIS为你做这类事情吗?这里和这里有一个非常类似的问题,你不能使用SSIS为你做这类事情吗?这里和这里有一个非常类似的问题,我不能告诉第一个问题,但第二个问题看起来像是SQL Server对SQL Server的问题,你不想重新发明,但是为不同的初始数据库构建一个工具,而不是在web上搜索几个转换器。无论如何,这是可能的吗?我不知道第一个是什么,但第二个看起来只是SQL Server到SQL Server而已。我们不尝试重新发明,而是为不同的初始数据库构建一个工具,而不是在web上搜索几个转换器。无论如何,这是可能的吗?谢谢Kevin,尝试了这个工具,以“发生了意外错误”结束了转换,没有进一步的信息。虽然它做了一些工作,但我很确定它是否做得一切都对。我认为SSMA中的一个UI设计错误是启动的向导执行实际转换,而不是允许您先测试它,然后修复任何不起作用的东西。我发现,关闭向导并手动执行更为有用,因为您可以准确地看到哪些无法按您希望的方式进行转换,然后调整源数据库以修复它(假设有可用的修复)。感谢Kevin,尝试了该工具,以“发生意外错误”结束了转换,并且没有进一步的信息。虽然它做了一些工作,但我很确定它是否做得一切都对。我认为SSMA中的一个UI设计错误是启动的向导执行实际转换,而不是允许您先测试它,然后修复任何不起作用的东西。我发现,关闭向导并手动执行更为有用,因为您可以准确地看到哪些内容无法按您希望的方式转换,然后调整源数据库以修复它(假设有可用的修复)。