“通过ODBC将十进制值缩放导致数据截断”

时间:2014-04-11 17:37:07

标签: oracle ms-access oracle11g odbc

我收到错误"十进制值的缩放导致数据截断"当简单地尝试在MS Access中查看ODBC表时。我知道返回错误的字段,并且Access在查询时能够识别该字段,但是我无法查看结果(#Error记录)并且错误仍在继续。

我试过CDbl()没有运气。 Nz()甚至不允许查询运行。

源数据库是Oracle,通过适用于Microsoft Windows x64的Database Client 11g第2版连接。该字段由数据字典定义为Number,长度为22。设计视图显示的字段为Decimal,精度为13,但比例为2.

我猜测2的比例导致了这个错误。我通过MS Access链接表。无论如何我可以通过访问Access和ODBC来解决这个问题,还是需要在Oracle中解决这个问题?

2 个答案:

答案 0 :(得分:1)

Oracle服务器最近将其规模从2更改为4以允许更高的精度。在服务器上进行更改时,链接的MS Access表不会更新。必须删除该表并重新链接才能刷新该比例。

答案 1 :(得分:0)

我几天前就遇到过这个问题,多亏了DAPOLE,我得到了我分享的解决方案......

  • 每当在Access中处理链接表并更改基础表定义时 - 在创建前端时,您必须重新链接链接表,以便将更改传播到Access。
  • 在我的情况下,我已将链接表格数据定义从数字更改为数字(5,2),但没有重新链接表格,
  • 所以输入或计算小数值Access并不知道它可以存储它们,
  • 因此错误Error scaling of decimal value resulted in data truncation.