在Sql Server中存储UInt32的最佳方法

时间:2009-03-29 06:31:45

标签: sql-server casting types

我正在使用第三方组件的应用程序,该组件返回一个类型为UInt32的值。

我需要将此UInt32存储在Sql Server表中。我正在考虑使用一个简单的int列并插入如下的值:

int value = (int)(cs - int.MaxValue);

但我不确定这是否是执行此类任务的最佳方式。

3 个答案:

答案 0 :(得分:6)

  1. 使用bigint或decimal(10,0)列并定义检查约束以确保它在0到40亿之间。

  2. 定义CLR数据类型

答案 1 :(得分:3)

我建议你把它存放在bigint列中。

答案 2 :(得分:0)

你应该拿+ int.MinValue。对于32位有符号整数,max为2147483647,min为-2147483648。零从正面窃取一个值。