SQL Server 字段类型 decimal(18,6)小数点前是几位?
不可否认,这是一个很低级的问题....
为什么会问这么低级的问题?
由于这个问题,导致一个数据导入的SP执行失败....以至于困扰了我好几个小时....
事情是这样的...公司总部上了一套Oracle的ERP,我们系统中有些数据要从里面取,比如Supplier,Product等。
Oracle会导出数据文件,我们同SSIS刷到本地相应的数据库(数据库的字段和Oracle的一致)。
对我们来说就是数据源变了,需要把Oracle的数据转化成我们先系统可以用的数据。
由于Oracle上线比较"快",为了让现有的系统基本能跑起来,同事写一个SP转化导入到我们系统的数据库。
这个SP 写的比较粗糙。
同事只是把Oracle的数据在进行处理之后 AS成现系统的字段。
sql语句是这样的:
SELECT
[DT_UAMT],[DT_DAMT],[DT_AMT]
INTO Temp_DT_PODT
FROM
(
NULL AS DT_UAMT
,convert(varchar,convert(decimal(18,6),isnull(usd_amount,\'0\') * 100)) as DT_DAMT
,convert(varchar,convert(decimal(18,6),isnull(LINE_AMOUNT,\'0\') * 100)) as DT_AMT
FROM OracleDB.[dbo].OracleTB
)