powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Баг с FOR SELECT и ограничением домена
14 сообщений из 14, страница 1 из 1
Баг с FOR SELECT и ограничением домена
    #38366226
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FB 2.5.2.
Создаем домен NOT NULL
Код: sql
1.
2.
3.
CREATE DOMAIN DOM$INTEGER AS
INTEGER
NOT NULL;


Создаем таблицу с этим доменом:
Код: sql
1.
2.
3.
CREATE TABLE TABLE_INTEGER (
    ID  DOM$INTEGER
);



Теперь считываем данные из нее (которых нет) через EXECUTE BLOCK:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
EXECUTE BLOCK
RETURNS (ID DOM$INTEGER)
AS
BEGIN
    FOR SELECT
        ID
    FROM
        TABLE_INTEGER
    INTO
        :ID
    DO
        SUSPEND;
END



На что сервер отвечает:
Код: plaintext
1.
The insert failed because a column definition includes validation constraints.
validation error for variable ID, value "*** null ***".

Если добавить в таблицу хотя бы строку, то все нормально.

Тикет на эту тему уже есть?
...
Рейтинг: 0 / 0
Баг с FOR SELECT и ограничением домена
    #38366231
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
баян знакомый, тикет сходу не помню. Влад вроде в теме.
...
Рейтинг: 0 / 0
Баг с FOR SELECT и ограничением домена
    #38366236
pastor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CyberMax,

что не так?

ошибка выскакивает не в FOR SELECT а в SUSPEND
...
Рейтинг: 0 / 0
Баг с FOR SELECT и ограничением домена
    #38366248
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pastor> ошибка выскакивает не в FOR SELECT а в SUSPEND

Какой саспенд? Он вообще вызываться не должен.

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Баг с FOR SELECT и ограничением домена
    #38366255
pastor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам,

там еще returning_values маячит
...
Рейтинг: 0 / 0
Баг с FOR SELECT и ограничением домена
    #38366260
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pastor> там еще returning_values маячит

Returns ? Это несколько другое. Тогда EB должен вываливать
эксепшн даже пустым и это не баг, насколько я понимаю.

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Баг с FOR SELECT и ограничением домена
    #38366264
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Впрочем, можно подумать над тикетом на тему не самого
удачного текста сообщения об ошибке (первого предложения).

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Баг с FOR SELECT и ограничением домена
    #38366274
m7m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Баг с FOR SELECT и ограничением домена
    #38366278
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А мы тут поезда под откос пускаем. (с)

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Баг с FOR SELECT и ограничением домена
    #38366283
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это не совсем оно, хоть отчасти и связано
...
Рейтинг: 0 / 0
Баг с FOR SELECT и ограничением домена
    #38366308
pastor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустамpastor> там еще returning_values маячит

Returns ? Это несколько другое. Тогда EB должен вываливать
эксепшн даже пустым и это не баг, насколько я понимаю.



а он и выаливает
Код: sql
1.
2.
3.
4.
5.
execute block
returns (ID integer not null)
as
begin
end
...
Рейтинг: 0 / 0
Баг с FOR SELECT и ограничением домена
    #38366662
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pastor> а он и выаливает

Не сомневаюсь, о чём и есть запись в трекере.
А For select и саспенд тут никаким боком.

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Баг с FOR SELECT и ограничением домена
    #38366974
Алексей Крюков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй так:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
EXECUTE BLOCK
RETURNS (ID TYPE OF DOM$INTEGER)
AS
BEGIN
    FOR SELECT
        ID
    FROM
        TABLE_INTEGER
    INTO
        :ID
    DO
        SUSPEND;
END



Я эту проблему именно так обхожу.
...
Рейтинг: 0 / 0
Баг с FOR SELECT и ограничением домена
    #38371853
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Создал CORE-4184 . Несмотря на CORE-2335 , считаю это багом.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Баг с FOR SELECT и ограничением домена
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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