簡體   English   中英

存儲到 oracle 時截斷負十進制值

[英]Negative decimal values truncated when store to oracle

當我嘗試將十進制 x = -258.9697 從 EntityFramework 存儲到數據庫時,出現“ORA-16550:截斷結果”的異常。 db中x的列是NUMBER(7, 4),如果我將x存儲為十進制正值258.9697就沒有問題。 如果我將比例增加到(10, 4),異常就解決了。 有誰知道原因嗎?

您使用的是哪個 Oracle 提供程序和版本? 這聽起來像錯誤 28227512

ODP 托管驅動程序的 OracleDecimal.ConvertToPrecScale 方法會為負值引發 ORA-16550 錯誤,因為在計算精度時考慮了負號。

如果我沒看錯,它應該在 ODP.NET 19.1 及更高版本中得到修復。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM