相关疑难解决方法(0)

使用页面压缩时的行开销是多少?

我创建了一个包含 650 个 Numeric(19,4) 列的表。当我打开页面压缩时,通过运行

ALTER TABLE fct.MyTable REBUILD  WITH (DATA_COMPRESSION = PAGE);
Run Code Online (Sandbox Code Playgroud)

我得到

消息 1975,级别 16,状态 1
索引“PK_Mytable”行长度超过了“8060”字节的最大允许长度。

但是 650 乘以 9 字节仅为 5850 字节,这与规定的 8060 字节的限制相去甚远。

服务器运行的是 Windows 2012 r2 和 SQL Server 2016 SP1 CU2

使用页面压缩时的行开销是多少?

这是一些代码来显示我的意思:

/* test script to demo MSG 1975 */
DECLARE @sql NVARCHAR(max)='', @i INT =0
drop table if exists dbo.mytable;

SET @sql = 'Create table dbo.Mytable (MyTableID bigint not null 
  identity(1,1) primary key clustered, '

WHILE @i < 593 BEGIN
    SET …
Run Code Online (Sandbox Code Playgroud)

data-pages compression sql-server-2016

10
推荐指数
1
解决办法
1448
查看次数

在两个不同的表中链接两个相同的主键有什么问题吗?

在此处输入图片说明

正如你在这里看到的,在OrderInfo和 中OrderNumber,我有一个关系集。但我不确定是什么样的。我希望建立一个关系,所以如果我删除了OrderNumber,它会级联删除相应的记录OrderInfo,但它不会让我。它给了我这个讨厌的'

不能在标识列上级联删除

错误,所以在删除级联删除后,它让我适当地保存它。我不确定关键的关键是什么,但我知道无限的关键是一对多?

database-design sql-server constraint cascade

4
推荐指数
2
解决办法
1625
查看次数