Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL Server数据库中具有最大大小的INT类型_Sql_Database_Sql Server 2008 - Fatal编程技术网

SQL Server数据库中具有最大大小的INT类型

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

如何在SQL Server数据库中为类型
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