0 امتیاز
قبل در برنامه نویسی توسط (1.1هزار امتیاز)

خطای ORA-01438: value larger than specified precision allowed for this column در اوراکل به چه دلیلی می تواند باشد؟

1 پاسخ

+1 امتیاز
قبل توسط (7.2هزار امتیاز)

هنگام تعریف فیلد جدول در اوراکل، تعداد ارقام صحیح و اعشار (در مبنای ده دهی) را مشخص می نمایید.

با دستور زیر:

CREATE TABLE test_mohi
(
  number_field  NUMBER(6,2)
)

شما یک فیلد عدد با طول 6 رقم تعریف می کنید که 2 رقم آن برای اعشار است. یعنی یک فیلد رقمی با حداکثر 4 رقم صحیح و 2 رقم اعشار.

حال اگر عددی که وارد می کنید بیش از 2 رقم اعشار داشته باشد، اوراکل اعشار آن را رند می کند به دو رقم اعشار اما اگر بیش از چهار رقم عدد صحیح داشته باشد با این خطا مواجه می شوید:

INSERT INTO test_mohi
     VALUES (44444.1)
Error at line 1
ORA-01438: value larger than specified precision allowed for this column

درست است که تعداد ارقام شش می باشد، اما تعداد اعداد صحیح بیشتر از 4 است که مجاز نمی باشد.

سوالات مشابه

+1 امتیاز
1 پاسخ 908 بازدید
0 امتیاز
2 پاسخ 1.1هزار بازدید
0 امتیاز
0 پاسخ 646 بازدید
0 امتیاز
1 پاسخ 487 بازدید
+1 امتیاز
1 پاسخ 963 بازدید
+1 امتیاز
1 پاسخ 308 بازدید
0 امتیاز
1 پاسخ 422 بازدید
...