如何使用 SSMA(用于访问 SQL Server)将具有不同列的表迁移到现有表中?

Posted

技术标签:

【中文标题】如何使用 SSMA(用于访问 SQL Server)将具有不同列的表迁移到现有表中?【英文标题】:How to use SSMA (for Access to SQL Server) to migrate a table with different columns into a existing table? 【发布时间】:2020-08-28 02:03:31 【问题描述】:

我目前正在使用 Microsoft SSMA 将表从旧的 Access 数据库迁移到现有的 SQL Server。这两个数据库具有完全相同的表,但其中一个表有一个额外的列。 SSMA 在迁移期间为其中一个表返回错误,抱怨数据类型不匹配,因为列实际上是对齐的。

例如,Access 中的表,其中Col1Col3 都是datetime

ID Col1 Col3

SQL Server 中的表:Col2 是双精度,Col1/Col3 仍然是日期时间

ID Col1 Col2 Col3

有没有办法让表成功地将 Access 数据迁移到现有表中(不覆盖表)?

附:我正在使用命令行脚本运行 SSMA

【问题讨论】:

如果是一次性任务,则将表格导出到excelcsv 文件,然后将该excel 文件导入SQL 数据库。 【参考方案1】:

我相信 SQL Server 的 datetime 有更多的选项/变化,并且可以/可能不同于 Access'...更深入地了解两者的 datetime 属性的语法/格式的定义...

不确定是否需要将 Col2 添加到 Access 表中;您没有指出这是原因,因此假设您的 SQL Col2 将接受 null...

【讨论】:

以上是关于如何使用 SSMA(用于访问 SQL Server)将具有不同列的表迁移到现有表中?的主要内容,如果未能解决你的问题,请参考以下文章

用于 Access 的 SQL Server 迁移助手:日期数据类型

使用 SSMA 将 Access 2007 数据库应用程序迁移到 SQL Server 2005 - 问题

SSMA 在连接到 microsoft access 数据库时挂起

Mysql迁移到Sql Server

需要在 MS Access 中使用链接表更改 sql server 数据库名称

MySQL数据迁移到SQL Server