我有以下SQL來創建表,但第一個CONSTRAINT中的「DEFAULT」給我一個錯誤:「默認約束只能存在於CREATE或ALTER TABLE中的列級別聲明。」默認約束導致錯誤
我以前從未使用過默認設置,所以我已經通過網絡調查進行了一些調查,但沒有任何信息幫助我解決錯誤,甚至還沒有真正向我解釋過錯誤。
CREATE TABLE [RuleEngine].[NCCIImportHistory](
[NCCIImportHistoryID] [int] IDENTITY(1,1) NOT NULL,
[StartTime] [datetimeoffset](7) NOT NULL,
[EndTime] [datetimeoffset](7) NOT NULL,
[CreatedOn] [datetimeoffset](7) NOT NULL,
[CreatedBy_UserID] [int] NOT NULL,
CONSTRAINT [DF_NCCIImportHistory_CreatedOn] DEFAULT (getutcdate()) FOR [CreatedOn],
CONSTRAINT [FK_NCCIImportHistory_User_CreatedBy] FOREIGN KEY([CreatedBy_UserID]) REFERENCES [Security].[User] ([UserID]),
CONSTRAINT [PK_NCCIImportHistoryID] PRIMARY KEY CLUSTERED ([NCCIImportHistoryID] ASC)
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 90) ON [PRIMARY]) ON [PRIMARY]
表,然後限制請指定dbms。 (這看起來不像ANSI/ISO SQL ...)順便說一句,我想你做一些像列名數據類型默認值... – jarlh
對不起。這是MS SQL服務器 – AtlasBowler