當我嘗試向SQL Azure表中插入一行時,出現以下錯誤。SQL Azure無法識別我的聚簇索引
此版本的 SQL Server不支持沒有聚集索引的表。請創建聚集索引並重試。
我的問題是我對該表有一個聚集索引。我使用SQL Azure MW來生成Azure SQL腳本。
下面是我使用的是什麼:
IF EXISTS (SELECT * FROM sys.objects
WHERE object_id = OBJECT_ID(N'[dbo].[tblPasswordReset]') AND type in (N'U'))
DROP TABLE [dbo].[tblPasswordReset]
GO
SET ANSI_NULLS ON
SET QUOTED_IDENTIFIER ON
IF NOT EXISTS (SELECT * FROM sys.objects
WHERE object_id = OBJECT_ID(N'[dbo].[tblPasswordReset]') AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[tblPasswordReset](
[PasswordResetID] [int] IDENTITY(1,1) NOT NULL,
[PasswordResetGUID] [uniqueidentifier] NULL,
[MemberID] [int] NULL,
[RequestDate] [datetime] NULL,
CONSTRAINT [PK_tblPasswordReset] PRIMARY KEY CLUSTERED
(
[PasswordResetID] ASC
)WITH (STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF)
)
END
GO
爲什麼不SQL Azure的認識我的聚集鍵?我的腳本錯了嗎?
當我運行該腳本選擇我得到PK_tblPasswordReset type_desc =麇集着結果。 這很奇怪... – Nate
桌子上是否有觸發器? 'select * from sys.triggers where object_id = object_id('tblPasswordReset')'觸發器可能會在非集羣表上執行插入操作。 – Andomar
我剛剛在SQL Azure數據庫上運行了確切的腳本,它運行良好。我懷疑問題在於您的數據庫中的其他內容與此腳本發生衝突。也許以前創建的表格版本? – knightpfhor