SQL Server:在表更新时创建大于8060字节的行

时间:2019-02-01 13:51:56

标签: c# sql-server

使用Database Telerik将表中的列从varchar(6)更新为varchar(10)时,SQL Server抛出此错误:

  

“ ALTER TABLE [Bin] ALTER COLUMN [bin_code] varchar(10)NOT NULL”上的SQL异常:无法创建大小为8061的行,该行大于允许的最大行大小为8060。

问题是,表通常由30个字节组成,因为它由一个varchar列和一些int和外键组成。

CREATE TABLE [dbo].[Bin]
(
    [id] [int] IDENTITY(1,1) NOT NULL,
    [bin_code] [varchar](6) NOT NULL,
    [icc_modulus_size] [int] NOT NULL,
    [icc_public_exponent] [int] NOT NULL,
    [icc_generation_counter] [int] NOT NULL,
    [id_brand] [int] NOT NULL,
    [id_issuer] [int] NOT NULL,

)

(不包括外键部分)

我知道SQL中的行不能超过8060的长度,但是问题是为什么它在更新表时试图创建它?

0 个答案:

没有答案