Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.04;
Скачать: [xml.tar.bz2];




Вниз

Удаление из таблицы, опять 


Demon ltd   (2002-03-11 22:39) [0]

Когда-то я задавал вопрос:
Для удаления записи из парадоксовской таблицы мне
посоветовали использовать в строчке
form1.Query1.SQL.Add("delete from "clients"");
form1.Query1.SQL.add("where (tabnomer="1234")");
строчку Query1.ExecSQL;
Но проблема в том, что куда вставить эту строчку.
Вместо SQL.Add или ещё куда-нибудь. Если вместо, то выдаётся
ошибка, но в чём проблема.
Подскажите.
Мне подсказали поместить эту строчку Query1.ExecSQL после
form1.Query1.SQL.add("where (tabnomer="1234")");
но всё равно выдаётся та жа ощибка.



Фэ   (2002-03-11 23:14) [1]

С помощью последовательных
SQL.Clear;
SQJ.Add("...");
..
Или сразу
SQL.Clear;
SQL.Text := "..";
Вы формируете текст SQL-запроса.
После чего методом
qu.ExecSQL;
его выполняете;
Но за не наличие алиаса, не подключения к базе, некорректности текста запроса за Вас никто отвечать не будет.



Malder   (2002-03-11 23:14) [2]

Млять. Тупость какая то... или я не понял чего-то...
Ты по ходу не знаешь ObjectPascal раз задаешь такие вопросы.

1) Не знаю будет работать ли пример твой, но лучше так:

form1.query1.add("DELETE from Clients where tabnomer="1234""); {не надо имя таблицы Clients в кавычки заносить}
form1.query1.execSQL; {при вызове этого метода будет выполняться SQL запрос}

2) Вообще, для локальных баз (типа Парадокса не используют обычно SQL. Если тебе нужно удалить текущую запись, то:

query1.delete;

Собственно говоря, и компонент query не надо использовать, можно обойтись Table.



Фэ   (2002-03-11 23:27) [3]

В некоторых базах и случаях (таблица как файл с расширением) допускается заключение имени таблицы в кавычки



sniknik   (2002-03-11 23:42) [4]

Не только допускается но в некоторых случаях без этого не обойдешся. К примеру попробуй составить запрос с упоминанием поля с именем Date. А с кавычками вокруг базы и поля можно.



Фэ   (2002-03-11 23:49) [5]

Это признак дурного тона - использование ключевых слов SQL в полях, но согласен - такой прием прокатывает.



sniknik   (2002-03-11 23:56) [6]

Про дурной тон можеш не расказывать сам знаю. Но мне чаше приходится работать с чужими (и устаревшими) базами а раньше похоже это было правилом хорошего тона. Пример кассовая программа Супермаг Укм - ни одной таблици без подобного поля! (чуть преувеличил;)



Anatoly Podgoretsky   (2002-03-12 00:00) [7]

Фэ © (11.03.02 23:49)
Да но Парадокс это не SQL сервер, поэтому это правило не применимо к нему.



Фэ   (2002-03-12 00:37) [8]

Дело-то в парсере SQL а не сервере.
Но точно насчет Pdx уже не скажу, не помню.
В DBISAM все катается (тоже файл-сервер)




Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.04;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.73 MB
Время: 0.021 c
4-9672            mindguru              2002-02-02 08:50  2002.04.04  
Вопросик мона?


7-9655            asafr                 2001-07-30 14:11  2002.04.04  
Замедление вращения CD-Rom


1-9566            DenKop                2002-03-24 15:14  2002.04.04  
Извлечение иконок


1-9430            Aleksandr             2002-03-22 13:08  2002.04.04  
Как обрезать файловый поток?


1-9451            pilot                 2002-03-25 13:21  2002.04.04  
Random