Вопрос по динамическому запросу

  • Автор темы FreeWay
  • Дата начала
Статус
Закрыто для дальнейших ответов.
F

FreeWay

#1
Всем доброго!!!
Мне нужно выбрать значения с таблицы, и в условии я хочу обратиться к ранее инициализированной переменной - id_supplier.
Запрос такой:

QueryWriteCome->SQL->Text="SELECT name_good FROM \"GOODS\"WHERE id_supplier="+id_supplier+"";

но почемуто на эту конструкция ругается:
invalid pointer addition
Как будто неправильно использую конструкцию.
Самое интерессное что в другом приложении такая конструкция отрабатывает((
БД PostgreSQL 8.3. Доступ через BDE
 
W

WoodooMan

#2
напиши вот так:
QueryWriteCome->SQL->Text="SELECT name_good FROM \"GOODS\"WHERE id_supplier="+id_supplier;
 
W

WoodooMan

#4
ну вообще это компилер нервничает, ему такие конкатенации типа str = "text1" + "text2" или + "" очень не нравятся... если ты напишешь " " - то такое тоже прокатит, но не пусто...
 
F

FreeWay

#5
И снова привет! Возник вопрос опять же по запросу:
у меня есть поле id_good типа integer, это у меня счетчик, вот таким запросом я хочу вставить новые данные и инкриментить счетчик:

sql="INSERT INTO \"GOODS\" (id_good, name_good, id_category, id_supplier) VALUES (SELECT max(id_good) +1 FROM \"GOODS\", '"+RzEditAddNomenklat->Text+"',1,2)";

компилятор не ругаеться, но при выполнении выдает ошибку такую:

отдельно такой запрос SELECT max(id_good) +1 FROM \"GOODS\"
отрабатывает и выгребает правильное значение
 

Вложения

W

WoodooMan

#7
ты запрос в скобки возьми SELECT max(id_good) +1 FROM \"GOODS\"
 
Статус
Закрыто для дальнейших ответов.