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 پاسخ 962 بازدید
0 امتیاز
2 پاسخ 1.3هزار بازدید
0 امتیاز
0 پاسخ 933 بازدید
0 امتیاز
1 پاسخ 627 بازدید
+1 امتیاز
1 پاسخ 1.1هزار بازدید
+1 امتیاز
1 پاسخ 408 بازدید
0 امتیاز
1 پاسخ 503 بازدید
...