Гость
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Firebird 3.0 Ошибка Incompatible switch combination / 4 сообщений из 4, страница 1 из 1
29.06.2020, 23:37
    #39974316
Firebird 3.0 Ошибка Incompatible switch combination
Всем привет! После перехода с Fb 2.5 на 3.0 появилась такая ошибка Incompatible switch combination - Несовместимая комбинация переключателей. Может кто-то встречался с подобным? Что значит эта ошибка? Ошибка иногда появляется, иногда нет.
Код из отчета FastReport:

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
 while not qPoints.eof do
     begin
        qinsert.close;
        qinsert.sql.text :='select count(*) as kol from  tmp_svod_podrs where nzp_podr='+ qPoints.FieldByName('nzp_podr').Asstring;
        qinsert.open;
        if qinsert.fieldbyname('kol').asInteger=0 then
        begin
              qinsert.close;
              qinsert.sql.text :='insert into tmp_svod_podrs (status,nzp_podr,name) values (0,'''+ 
                                       qPoints.FieldByName('nzp_podr').Asstring+''','''+ qPoints.FieldByName('name').Asstring+''')';
              qinsert.open;
              qinsert.close;
              qinsert.sql.text :='commit ';
              qinsert.open;
        end;
        qPoints.next;
      end;
      qPoints.close;
...
Рейтинг: 0 / 0
29.06.2020, 23:43
    #39974317
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Firebird 3.0 Ошибка Incompatible switch combination
Кареглазая_зая,

ужас!!!!

Не надо использовать DataSet для insert запросов, а уж тем более для commit. Кроме того надо использовать параметры а не пересобирать запрос "на лету".
...
Рейтинг: 0 / 0
29.06.2020, 23:57
    #39974321
Firebird 3.0 Ошибка Incompatible switch combination
Симонов Денис, это query
...
Рейтинг: 0 / 0
30.06.2020, 00:01
    #39974322
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Firebird 3.0 Ошибка Incompatible switch combination
Кареглазая_зая,

скорее всего firebird.msg не от той версии. Поэтому сообщение "не оттуда".

параметры - да, надо использовать.

А вот еще
Код: pascal
1.
qinsert.sql.text :='commit ';


это что за ... ерунда? Либо это не от Firebird код, либо у вас там ошибки в коде съедаются.
коммит делается вызовом метода компонент, а не SQL.

И наконец
Код: pascal
1.
2.
qinsert.open;
qinsert.close;


опять ахинея. Query.Open вызывается только для запросов, которые возвращают набор записей.
Вам надо метод ExecSQL (или что там у вас) для insert (update/delete) вызывать.

Ну и, в цикле select count - это путь в обрыв.
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Firebird 3.0 Ошибка Incompatible switch combination / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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