Sql 在非默认文件组的文件组上创建表
标题很清楚,我创建了一个新的文件组“ArchiveFileGroup”: 我想创建一个名为:arc_myTable的表,以便存储来自这个:myTable的旧数据 我使用了以下查询:Sql 在非默认文件组的文件组上创建表,sql,sql-server,database,filegroup,Sql,Sql Server,Database,Filegroup,标题很清楚,我创建了一个新的文件组“ArchiveFileGroup”: 我想创建一个名为:arc_myTable的表,以便存储来自这个:myTable的旧数据 我使用了以下查询: CREATE TABLE [dbo].acr_myTable( [Id] [bigint] NOT NULL, [label] [nvarchar](max) NOT NULL, )on ArchiveFileGroup 我不确定这是否正确,我不知道在哪里创建文件组来检查它是否包含表 您可以很容易
CREATE TABLE [dbo].acr_myTable(
[Id] [bigint] NOT NULL,
[label] [nvarchar](max) NOT NULL,
)on ArchiveFileGroup
我不确定这是否正确,我不知道在哪里创建文件组来检查它是否包含表 您可以很容易地检查以下内容: 只需添加:
AND f.name = ArchiveFileGroup
要查看新文件组中的所有内容,请执行以下操作:
AND o.name = acr_myTable
查看您的桌子的位置
如果您从未将文件添加到文件组,那么我预计会出现错误,但您没有包含错误消息或任何说明您创建了文件的内容。如果没有,我建议在需要的时候开始
OP发现尝试在其文件组中创建新文件很有帮助。您可以使用查看服务器中创建的所有文件组,如
SELECT *
FROM sys.filegroups
有关更多信息,请参见此处这是一篇老文章。想要添加信息,它可能会在将来帮助某人
sp\u帮助
您可以看到在其上创建表的文件组 NB。您可以通过右键单击表格然后选择“属性”进行检查。在存储器上,您可以看到新表所属的文件组 就你而言: 它将在默认文件组上创建表,而不是在您创建的新文件组上。文件组是逻辑文件,用于创建辅助文件。例如,如果需要在与默认驱动器不同的位置创建表,则必须为新文件组定义文件名
GO如果使用SSMS,它将显示表的文件组。在对象资源管理器表属性中,选择“存储”。事实上,当我检查文件组的属性时,它有0Mb没有添加任何文件。我认为在创建文件组时,默认情况下会添加该文件。我不知道如何添加此文件。我会查文件的。谢谢大家!@GSDa,你确定吗?因为根据您的帖子,我看到您已经在该文件组上创建了一个表。顺便问一下,这是一张空桌子吗?如果是,那么它可能是。@Rahul是的,你是对的,它是空的,我无法添加行。错误说明文件组未添加任何文件。@GSDa,您可以将其作为单独的问题发布(如果需要)。我找到了一个解决方案,它可能会帮助其他人。下面介绍如何将文件添加到现有文件组
AND o.name = acr_myTable
SELECT *
FROM sys.filegroups
ALTER DATABASE [db] ADD FILEGROUP [NewFileGroup]
ALTER DATABASE [db] ADD FILE ( NAME = N'NewFile', FILENAME = N':D\..\Newfile.ndf' , SIZE = 8192KB , FILEGROWTH = 65536KB ) TO FILEGROUP [NewFileGroup]