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

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

sql [D5, Paradox]


skarm ©   (2003-01-22 13:30:00) 

Народ, помогите!

Надо из таблицы удалить строку. Делаю это через sql
пишу "delete from xxx where id = 125" - все ok, но надо сделать так чтобы удалялась та строка на которой стоит курсор
ID присваиваю переменной, но вот как вставить эту переменную в sql запрос?


Max Zyuzin   (2003-01-22 14:53:00) [1]

>kkot (22.01.03 14:36)
Хе... интересно, я подобных приколов никогда не замечал, правдя я в основном работю с DBE и IBX компонентами...


kkot   (2003-01-22 14:36:00) [2]

В BDE"шных еще жить можно, но в ADO"шных просто пипец! У меня был такой глюк, что после выполнения запроса, ADOQuery не желал больше принимать никаких параметров. Тогда не было времени разбираться с ним, просто прилепил еще один запрос, а потом все переделал без параметров и зарекся с ними дружбу водить 6)). Удачи!


Max Zyuzin   (2003-01-22 14:24:00) [3]

>kkot (22.01.03 14:01)
Так иногда или довольно часто???


kkot   (2003-01-22 14:01:00) [4]

Или без параметра :))

Id := Query1.FieldByName("id").AsInteger; //???
Id_str:=""""+IntToStr(Id)+"""";
Query2.SQL.Clear;
Query2.SQL.Add("delete from xxx where id = " + Id_str);
Query2.ExecSQL;

Параметризированные запросы - это, конечно, вещь хорошая, но они иногда довольно часто глючат :)) А запрос это всего лишь текст, который можно формировать как строку текстового типа


skarm   (2003-01-22 13:56:00) [5]

всем спасибо все получилось


Max Zyuzin   (2003-01-22 13:52:00) [6]

Нет не надо никаких столбцов...
То, что я написал - просто разные Query используются для разных команд, 1 для получения НД, второй, для удаления
Опиши задачу обширней... возможно все это вообще не нужно


Max Zyuzin   (2003-01-22 13:41:00) [7]

id := Query1.FieldByName("id").AsIntefer; //???
Запрос в другом QUery дожен быть таким "delete from xxx where id = :my_id"
И дальше
Query2.ParamByName("my_id").AsInteger := id;
Query2.ExecSQL;


skarm   (2003-01-22 13:41:00) [8]

т.е. добавить столбец в который будет добавляться информация об удалении, а следующим шагом удалять по этому столбцу


Max Zyuzin   (2003-01-22 13:38:00) [9]

Через параметр


Наверх

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