oracle decimal(10,0)类型强制转换sql char(10) 如何转换

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle decimal(10,0)类型强制转换sql char(10) 如何转换相关的知识,希望对你有一定的参考价值。

decimal应该是数字类型的,decimal(10,0)代表数字总共表达十位长度,小数0位.也就是最大存放9999999999,不可存放小数.Oracle中,可以使用to_char函数对数字进行转换,使它变成字符类型. 参考技术A 不要被decimal类型所迷惑,Oracle只是在语法上支持decimal类型,但是在底层实际上它就是number类型,支持decimal类型是为了能把数据从Oracle数据库移到其他数据库中(如DB2等)。
因为decimal在Oracle底层就是number类型,所以就当number类型使用就可以了,就用to_char函数对其转换就行了。本回答被提问者采纳

oracle 里的字段类型是 Number ,SQL里对应的字段是decimal

现在在SQL里查询提示类型错误,如何解决

decimal
把它换位整型与数据库中字段匹配,否则改字段类型
参考技术A 在oracle里面查什么?请提供table ddl以及sql,谢谢!追问

例子:select * from openquery
(WMS,'select shl
from WMS_EDI')
shl 字段是Number类型的
在SQL里查询就会报错

追答

openquery是存储过程或者函数吧,'select shl from WMS_EDI'整个语句作为输入参数,请提供openquery的完整代码,谢谢!

追问

这是数据库连接访问语句括号里的事ORACLE数据库里的表

追答

那就没办法判断错误原因啦。

以上是关于oracle decimal(10,0)类型强制转换sql char(10) 如何转换的主要内容,如果未能解决你的问题,请参考以下文章

char *怎样转成int

在sql中如何将字符串数字转换成数字?

sql怎么把字符串转换为数字?

IQueryable<decimal> 转十进制

sql表小数点前面的0不显示问题

Oracle怎样把varchar2型转成number型