简体   繁体   中英

What size for a SqlDbType parameter with bigint?

What is the size to specify for a bigint parameter?

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

param.Size = ???

Or can specifying the size be omitted altogether?

SQL Server Integer Data types INT, TINYINT, SMALLINT OR BIGINT all has a specific Range and fixed storage space required.

In Sql Server when consuming these data types we cannot limit the range or space required to store these data types by defining a size.

For more information on size and range of these data types have a look here 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  ║
╚═══════════╩══════════════════════════════════════════════════════════════════════════╩═════════╝

更正您在为命令创建整数类型参数时不需要指定大小

Command.Parameters.Add("@p0", SqlDbType.TinyInt)  // omit size, name.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM