0
如果我创建了一个包含我所有sql对象的.sqlproj文件,为什么需要将我的mdf,ldf文件放入VS Team服务源代码库? .mdf是否包含所有数据?如果这是真的,那么我可能不想将所有数据存储在我的回购中?如果我需要重新创建数据库,我总是可以将数据库发布到localdb?这里有什么最佳实践?我应该将我的.mdf和.ldf文件从我的代码放到Visual Studio Team Services存储库中
如果我创建了一个包含我所有sql对象的.sqlproj文件,为什么需要将我的mdf,ldf文件放入VS Team服务源代码库? .mdf是否包含所有数据?如果这是真的,那么我可能不想将所有数据存储在我的回购中?如果我需要重新创建数据库,我总是可以将数据库发布到localdb?这里有什么最佳实践?我应该将我的.mdf和.ldf文件从我的代码放到Visual Studio Team Services存储库中
你不会控制实际的.MDF和.LDF文件;它们包含您的实际数据。
但是,有一些用例需要控制,其中存在磁盘的.MDF和.LDF文件。在这种情况下,在您的.sqlproj文件中包含定义MDF/LDF文件位置的文件组文件可能是合理的。
例如,假设您有一个较大的D:驱动器,您希望存储数据,而一个快速的E:驱动器由您希望存储索引的SSD组成。从您的.sqlproj存放文件夹,您可以:
然后,可以修改你的表格以包含ON { FileGroup}子句是这样的:
CREATE TABLE [dbo].[MyTable] (
MyTableID INT IDENTITY(1,1) NOT NULL,
OtherIndexField NVARCHAR(50) NULL,
...
CONSTRAINT [PK_MyTable] PRIMARY KEY CLUSTERED ([MyTableID] ASC)
) ON [Data];
CREATE NONCLUSTERED INDEX [IX_MyTableByOtherIndexField]
ON [dbo].[MyTable]([OtherIndexField] ASC)
ON [Index];