我有一个包含 11,000,000 条记录的 Access 数据库。我想使用 Upsize 工具将此记录传输到 Sqlserver 2008 中的同一个表。此工具可以正确创建数据库和表,但 SQL Server 中的表为空且未传输数据。
问问题
474 次
2 回答
3
由于您没有提到收到错误消息,请检查新 SQL Server 表中的字段类型以确认它们与 Access 对应项兼容。
如果看起来正常,请启动 Access 并创建指向 SQL Server 表的 ODBC 链接。然后创建一个 Access“追加查询”,将 Access 表中的数据添加到 SQL Server 表中。
INSERT INTO remote_table (field1, field2, field3)
SELECT field1, field2, field3
FROM local_table
WHERE date_field >= #2012-01-01# AND date_field < #2012-02-01#;
请注意,我设想了一个WHERE
子句,它将行数限制为 1100 万行中相当小的一个子集。根据您的情况进行调整。
如果INSERT
成功,请使用不同WHERE
的条件重复此操作,以将数据块附加到 SQL Server,直到将其全部传输。
如果它失败了,希望你会收到一条错误消息来解释原因。
于 2012-12-06T20:17:13.837 回答
1
正如这里所指出的,在大多数情况下,这是一个错误的日期,或者只是一个超出 SQL Server 的日期,从而导致失败。我建议您使用 Access 迁移工具,而不是内置工具。它做得更好。
您可以在此处找到此实用程序:
http://www.microsoft.com/en-us/download/details.aspx?id=28763
以上倾向于处理日期和其他阻止数据上传的问题,远远优于内置的升迁工具
于 2012-12-08T18:57:35.827 回答