如果對數據庫執行它,它的工作原理!但嘗試建立在VS sql服務器項目上沒有。爲什麼不能用這個對象在VS上構建sql server項目
CREATE TABLE [dbo].[Recebimento_Arquivo] (
[RAr_Codigo] INT IDENTITY (1, 1) NOT NULL,
[Rar_ID_FS] UNIQUEIDENTIFIER DEFAULT (newid()) ROWGUIDCOL NOT NULL,
[Rec_Codigo] BIGINT NULL,
[FAr_Codigo] INT NOT NULL,
[RAr_Arquivo] VARBINARY (MAX) FILESTREAM NULL,
[RAr_Dat_Cadastro] DATETIME CONSTRAINT [dnfRecebimentoArquivo_RArDatCadastro] DEFAULT (getdate()) NULL,
CONSTRAINT [PK_Recebimento_Arquivo] PRIMARY KEY CLUSTERED ([RAr_Codigo] ASC) ON [FG_ARQUIVOS_DADO],
CONSTRAINT [FK_Recebimento_Arquivo_FAr_Codigo] FOREIGN KEY ([FAr_Codigo]) REFERENCES [dbo].[Formato_Arquivo] ([FAr_Codigo]),
UNIQUE NONCLUSTERED ([Rar_ID_FS] ASC) ON [FG_ARQUIVOS_DADO]
) FILESTREAM_ON [FG_ARQUIVOS_FS_01];
它導致
Severity Code Description Project File Line Suppression State
Error SQL71566: Filegroup: [FG_ARQUIVOS_FS_01] cannot not be set on both the Table: [dbo].[Recebimento_Arquivo] and the clustered Primary Key: [dbo].[PK_Recebimento_Arquivo].
集羣索引/密鑰本身就是表 - 很可能根本無法單獨爲它設置文件組。 – Arvo
如果我只是省略了主鍵上的文件組,它就可以工作,但需要理解爲什麼在主要文件組上解釋它不起作用! –
問題不是主要的,而是聚集的關鍵。集羣鍵本身就是數據(表),它不能位於另一個文件組(它們是相同的數據) - 並且在這種情況下sql server可能根本不允許設置它。 – Arvo