未能为数据库‘DBName’中的对象‘TableName’分配空间,因为文件组‘primary’已满
这是什么问题?
另外请教数据库的大小有没有限制?
我的那个数据库现在有3971.88MB
ALTER DATABASE DBName
ADD FILE
( NAME = DBNamedat3,
FILENAME = 'c:/Program Files/Microsoft SQL Server/MSSQL/Data/DBNamedat3.ndf',
SIZE = 5MB,
MAXSIZE = 100MB,
FILEGROWTH = 5MB)
TO FILEGROUP primary
同问,我刚刚也遇到这个问题
莫非2楼所说的Primary文件组的size太小了?
我刚刚做了个试验,一个表,有自增量字段ID,为主键,表中有51360条数据
我将ID删了,再重新建立就出问题了:
'tOperateLog' 表
- 不能创建索引 'PK_tOperateLog'。
ODBC 错误: [Microsoft][ODBC SQL Server Driver][SQL Server]未能为数据库 'OCRSDB' 中的对象 'tOperateLog' 分配空间,因为文件组 'PRIMARY' 已满。
[Microsoft][ODBC SQL Server Driver][SQL Server]未能创建约束。请参阅前面的错误信息。
[Microsoft][ODBC SQL Server Driver][SQL Server]警告: 已创建表 'tOperateLog',但其最大行大小(8095)超过了每行的最大字节数(8060)。如果结果行长度超过 8060 字节,则此表中行的 INSERT 或 UPDATE 将失败。
[Microsoft][ODBC SQL Server Driver][SQL Server]语句已终止。
不太明白。
alter database 数据库名
modify file
(
name = test_data,
/*--这里的数据库名不是mdf的filename,你必须通过exec sp_helpdb查到你的数据库的主文件的命名,然后修改.---*/
size = 20,
/*--这里定义的尺寸一定要大于第一次定义的尺寸---*/
maxsize = unlimited,
filegrowth = 10%
)