1

我有一个大型(约 3300 万条记录)本地 SQL Server 数据库,必须将其复制到 SQL Azure 数据库(需要近实时复制)。我正在尝试使用 Attunity Replicate 软件来实现这一点。

我创建了一个带有Full Load指定选项的任务,该任务成功地将初始数据上传到 Azure。之后,我创建了另一个Apply Changes指定选项的任务,但此任务以错误结束:

Failed to execute statement: 'INSERT INTO [attrep_apply_exceptions] values ( ...'

RetCode: SQL_ERROR  SqlState: 42000 NativeError: 40054 Message: [Microsoft][SQL Server Native Client 11.0][SQL Server] Tables without a clustered index are not supported in this version of SQL Server. Please create a clustered index and try again. Line: 1 Column: -1

Attunity[attrep_apply_exceptions]在 Azure 数据库中创建的表没有任何聚集索引,因此插入失败(Azure 不允许没有聚集索引的表)。

为什么会这样?我应该自己添加索引吗?

4

1 回答 1

1

所有表都必须具有聚集索引。您将能够创建一个没有表格的表格,但是一旦您插入第一条记录,您将看到以下消息:Tables without a clustered index are not supported in this version of SQL Server

这里有一个 Azure Sql 限制/差异列表

要回答您的问题,是的,您必须自己添加聚集索引。

于 2014-04-05T12:08:47.113 回答