使用bigint的SqlDbType参数的大小是多少?

时间:2014-09-18 23:01:13

标签: c# sql-server size sqlparameter sqldbtype

为bigint参数指定的大小是多少?

SqlParameter param = new SqlParameter("@Param", SqlDbType.Bigint);

param.Size = ???

或者可以完全省略指定大小?

2 个答案:

答案 0 :(得分:2)

SQL Server整数数据类型INT,TINYINT,SMALLINT或BIGINT都具有所需的特定范围和固定存储空间。

在Sql Server中,当使用这些数据类型时,我们不能通过定义大小来限制存储这些数据类型所需的范围或空间。

有关这些数据类型的大小和范围的详细信息,请查看SQL SERVER int, bigint, smallint, and tinyint

╔═══════════╦══════════════════════════════════════════════════════════════════════════╦═════════╗
║ Data type ║                                  Range                                   ║ Storage ║
╠═══════════╬══════════════════════════════════════════════════════════════════════════╬═════════╣
║ bigint    ║ -2^63 (-9,223,372,036,854,775,808) to 2^63-1 (9,223,372,036,854,775,807) ║ 8 Bytes ║
║ int       ║ -2^31 (-2,147,483,648) to 2^31-1 (2,147,483,647)                         ║ 4 Bytes ║
║ smallint  ║ -2^15 (-32,768) to 2^15-1 (32,767)                                       ║ 2 Bytes ║
║ tinyint   ║ 0 to 255                                                                 ║ 1 Byte  ║
╚═══════════╩══════════════════════════════════════════════════════════════════════════╩═════════╝

答案 1 :(得分:1)

更正为命令

创建整数类型参数时不需要指定大小
Command.Parameters.Add("@p0", SqlDbType.TinyInt)  // omit size, name.