Вниз
Скачать: CL | DM;

Не срабатывают запросы...   Найти похожие ветки 

 
ДмитрийБ   (2003-12-13 18:45) [0]

три запроса на удаление записей составлены одинаково, но срабатывает только один

ss:="DELETE FROM sales WHERE ZAKAZ_CODE="+
"(SELECT ZAKAZ_CODE FROM bl_zakaz WHERE "+
"CUST_CODE=""+sCod+"")";

// строка получается: DELETE FROM sales WHERE ZAKAZ_CODE=(SELECT ZAKAZ_CODE FROM bl_zakaz WHERE CUST_CODE="12345678"

dMain.qrWork.SQL.Clear;
dMain.qrWork.SQL.Add(ss);
dMain.qrWork.ExecSQL; //не срабатывает!

ss:="DELETE FROM bl_zakaz WHERE CUST_CODE=""+sCod+""";

// строка получается: DELETE FROM bl_zakaz WHERE CUST_CODE="12345678"

dMain.qrWork.SQL.Clear;
dMain.qrWork.SQL.Add(ss);
dMain.qrWork.ExecSQL; //здесь срабатывает!

ss:="DELETE FROM fio WHERE CODE=""+sCod+""";

// строка получается: DELETE FROM fio WHERE CODE="12345678"

dMain.qrWork.SQL.Clear;
dMain.qrWork.SQL.Add(ss);
dMain.qrWork.ExecSQL; //не срабатывает!

Заранее спасибо!


 
ЮЮ ©   (2003-12-15 03:11) [1]

что значит "срабатывает" ?
Количество удаленных записей смотри в dMain.qrWork.RowsAffected,
Если оно равно нулю, значит нет строк, удовлетворяющих учловию.
Попробуй так:

ss:="FROM sales WHERE ZAKAZ_CODE=" +
"(SELECT ZAKAZ_CODE FROM bl_zakaz WHERE "+
"CUST_CODE=" + QuotedStr(sCod) + ")";

// строка получается: FROM sales WHERE ZAKAZ_CODE=(SELECT ZAKAZ_CODE FROM bl_zakaz WHERE CUST_CODE="12345678"

dMain.qrWork.SQL.Text := "SELECT COUNT(*) as CNT " + ss";
dMain.qrWork.Open;
if dMain.qrWork.Fields[0].asInteger = 0 then
Application.MessageBox(ss, "Нет строк для удаления", 0)
else begin
dMain.qrWork.SQL.Text := DELETE " + ss";
Main.qrWork.ExecSQL;
Application.MessageBox(IntToStr(Main.qrWork.RowsAffected), "Удалено строк", 0)
end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.015 c
1-37706
ss300
2003-12-23 14:29
2004.01.13
OpenDialog


6-37820
Сергей Н.
2003-10-03 09:42
2004.01.13
Как получить локальный IP адрес


1-37726
Evgeny78
2003-12-30 14:25
2004.01.13
OLE


1-37765
Оки
2003-12-29 16:23
2004.01.13
Как отправить на выполнение txt


14-37848
NewD
2003-12-22 15:55
2004.01.13
MS SQL SERVER - бесплатная версия - где найти ?




   Наверх