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 پاسخ 905 بازدید
0 امتیاز
2 پاسخ 1.1هزار بازدید
0 امتیاز
0 پاسخ 636 بازدید
0 امتیاز
1 پاسخ 480 بازدید
+1 امتیاز
1 پاسخ 952 بازدید
+1 امتیاز
1 پاسخ 305 بازدید
0 امتیاز
1 پاسخ 418 بازدید
...