SQL Server数据库中具有最大大小的INT类型
如何在SQL Server数据库中为类型SQL Server数据库中具有最大大小的INT类型,sql,database,sql-server-2008,Sql,Database,Sql Server 2008,如何在SQL Server数据库中为类型int、integer或number指定最大大小 例如,使用varchar可以指示最大大小:varchar(40) 这些数字的等价物是什么?它们已经由您使用的类型定义, 对于bigint,这将是8个字节。请参见定义检查约束: CREATE TABLE dbo.YourTable ( SomeIntColumn INT CONSTRAINT CHK_YourTable_SomeIntColumn CHECK (SomeIn
int
、integer
或number
指定最大大小
例如,使用varchar
可以指示最大大小:varchar(40)
这些数字的等价物是什么?它们已经由您使用的类型定义,
对于bigint,这将是8个字节。请参见定义
检查约束:
CREATE TABLE dbo.YourTable
(
SomeIntColumn INT
CONSTRAINT CHK_YourTable_SomeIntColumn
CHECK (SomeIntColumn >= 0 AND SomeIntColumn <= 9999),
.......
)
其中,p
是精度(总位数),s
是刻度(小数点后的位数)
因此,decimal(10,4)
总共提供了10位,其中4位在小数点之后,因此可以有如下值
0.0000
123456.1234
依此类推一个解决方案可能是创建一个触发器,如图所示:检查约束限制了可接受的值范围,但对使用的存储量的唯一影响是您选择的内置类型-因此,例如,无法获得仅使用6字节存储的整数类型。如果不是整数,一般来说,有没有办法为一个数值指定这个最大大小?是的,但我的意思是当我想要一个包含不超过4个数字的int时,例如数据库Key1中的一个属性应该是数字,它的最大数字大小是4,当我输入11158时,它将不接受itOh,检查marc_的回答是的,谢谢,但在以后的代码中,如何使用schematable的ColumnSize来引用这个max number 9999呢?因为我必须在我的系统中使用最大大小进行一些验证code@manu:您不能为INT
列设置“最大大小”-它的大小始终为4字节。如果不是为INT,我可以为其他数字类型设置最大大小吗?(数字)
0.0000
123456.1234