Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

как использовать ROW_COUNT в FB 1.5.2 ?


Prohodil Mimo ©   (2005-10-07 14:40:00) 

В хелпе написано:


UPDATE TABLE1 SET FIELD1 = 0 WHERE ID = :ID;
IF (ROW_COUNT = 0) THEN
  INSERT INTO TABLE1 (ID, FIELD1) VALUES (:ID, 0);


пробую сделать подобным образом через TpFIBQuery.
При ExecQuery выдаёт "Token unknown - line 2, char 1. IF."

Как его использовать?


Desdechado   (2005-10-07 19:13:00) [1]

2 Fay
вообще-то речь идет о FB1.5
но даже Оракловские блоки команд типа BEGIN <что-то там> END; - это все равно ОДНА команда, просто составная


Fay   (2005-10-07 19:04:00) [2]

2 Digitman ©   (07.10.05 16:10) [6]
> Query призван передать серверу на исполнение ОДНО
> sql-предложение !


Видимо, Вы говорите о каком-то конкретном сервере?
Или о каком-то конкретном "Query"?...


Digitman   (2005-10-07 16:10:00) [3]


> Prohodil Mimo ©   (07.10.05 16:04) [4]


Query призван передать серверу на исполнение ОДНО sql-предложение !

а ты пытаешься аж целых 2 передать

1-е:
UPDATE TABLE1 SET FIELD1 = 0 WHERE ID = :ID;

2-е:
INSERT INTO TABLE1 (ID, FIELD1) VALUES (:ID, 0);

к тому же в спецификации FB DSQL (ее как раз и использует твой Query) нет никаких "IF"

а "IF" есть в FB PSQL

FB DSQL и FB PSQL - далеко не одно и то же.


Digitman   (2005-10-07 16:06:00) [4]

к тому же, если мне не изменяет память, в соврем.версиях FB PSQL для означенной цели следует использовать не ROW_COUNT, а ROWS_AFFECTED ..

поправьте, если ошибаюсь ...


Prohodil Mimo   (2005-10-07 16:04:00) [5]

Desdechado ©   (07.10.05 15:55) [3]
Query - это ОДНА команда
а у тебя уже как минимум две, причем с элементами host-языка ХП


расшифруй, пожалуйста, т.к. я ничего не понял.


Desdechado   (2005-10-07 15:55:00) [6]

Query - это ОДНА команда
а у тебя уже как минимум две, причем с элементами host-языка ХП


msguns   (2005-10-07 14:54:00) [7]

>Андрей Жук ©   (07.10.05 14:50) [1]
>это фичу можно использовать в процедурах или триггерах.

Еще во вьюхах ;))

По сабжу: язык серверов и SQL-язык - это вовсе не одно и то же


Андрей Жук   (2005-10-07 14:50:00) [8]

это фичу можно использовать в процедурах или триггерах.


Наверх

Титульная страница Поиск, карта сайта Написать письмо