Sql server DB2/AS400小数的SQL Server数据类型,具有字节长度和十进制长度
我必须将数据从AS400 DB2系统加载到SQL Server 2012。提取的数据是excel格式的,我需要从中加载到SQL Server。提及 在DB2/AS400中,我有以下十进制类型Sql server DB2/AS400小数的SQL Server数据类型,具有字节长度和十进制长度,sql-server,sql-server-2012,Sql Server,Sql Server 2012,我必须将数据从AS400 DB2系统加载到SQL Server 2012。提取的数据是excel格式的,我需要从中加载到SQL Server。提及 在DB2/AS400中,我有以下十进制类型 字节长度=2,十进制长度=3,十进制位置=0 字节长度=3,十进制长度=5,十进制位置=2 字节长度=3,十进制长度=3,十进制位置=0 字节长度=3,十进制长度=5,十进制位置=4 字节长度=4,十进制长度=4,十进制位置=0 字节长度=4,十进制长度=6,十进制位置=3 字节长度=4,十进制长度=7,十
选择这些数据类型的基本原理是什么?在SQL Server中,您不需要定义一个
十进制数所占用的存储空间-SQL Server有固定的存储要求。因此,如果我将字节长度解释为存储大小要求,那么我认为我们必须忽略字节长度。至于其余部分,在SQL Server中,您声明为:
其中,p
是精度(数字所有部分的总位数),s
是刻度(小数点右侧的位数)
由于您展示的所有类型的“十进制长度”都比“Dec Pos”大,因此我假设这些概念直接映射到decimal
s精度和比例
所以类型1将是十进制(3,0)
,而数字16将是十进制(9,4)
我们不能使用货币
作为数据类型吗?注意:excel加载数据时,在SQL中加载为float
Server@Lijo-你可以,但我不推荐。它就像一个十进制(19,4)
,只是它有一些奇怪的舍入规则。
decimal (p ,s)