powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Firebird 2.5.9 и Statement failed, SQLSTATE = 22003
5 сообщений из 5, страница 1 из 1
Firebird 2.5.9 и Statement failed, SQLSTATE = 22003
    #40034913
autosoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день всем.

Есть вопрос про Firebird 2.5.9 и ошибку:

Statement failed, SQLSTATE = 22003
Integer overflow. The result of an integer operation caused the most significant bit of the result to carry.

Почему вот такой запрос генерирует эту ошибку?

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
execute block
as
declare variable a numeric(18,4);
declare variable b numeric(18,4);
declare variable c numeric(18,4);
begin
    a = 100;
    b = 1000;
    c = 10000;
    a = a * b * c;
end



Если строчку
Код: sql
1.
a = a * b * c;


переписать как
Код: sql
1.
2.
a = a * b;
a = a * c;


то этой ошибки уже нет.

Почему генерируется ошибка в первом случае?
...
Рейтинг: 0 / 0
Firebird 2.5.9 и Statement failed, SQLSTATE = 22003
    #40034915
m7m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
autosoft,

Ну наверное считает что a * b * c будет иметь тип (18,12)
...
Рейтинг: 0 / 0
Firebird 2.5.9 и Statement failed, SQLSTATE = 22003
    #40034952
MikeDD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Firebird 2.5.9 и Statement failed, SQLSTATE = 22003
    #40034962
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
m7m
autosoft,

Ну наверное считает что a * b * c будет иметь тип (18,12)

Но не "считает", что a * b будет иметь тип (18,8)? :)
...
Рейтинг: 0 / 0
Firebird 2.5.9 и Statement failed, SQLSTATE = 22003
    #40034979
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ъъъъъ
m7m
autosoft,

Ну наверное считает что a * b * c будет иметь тип (18,12)

Но не "считает", что a * b будет иметь тип (18,8)? :)


считает. Но 100 * 1000 его не переполняет.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Firebird 2.5.9 и Statement failed, SQLSTATE = 22003
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]