![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Не получается удалить строку из таблицы [D7, Access]
Дмитрий © (2010-05-15 17:13:00)Добрый день,bзвеняюсь что отвлекаю, но у меня не большой вопрос. Есть аксесовская база данных и у одной из ее таблиц мне надо программно удалять строку. Все строки таблици хронятся в combobox-e и я с помощью sql-запроса пытаюсь удалять, но выдает ошибку:' Параметр Гост не имеет значения по умолчанию', Гост- название таблицы. Листинг:
DataModule2.ADOQuery1.Active:=false;
DataModule2.ADOQuery1.SQL.Clear;
DataModule2.ADOQuery1.SQL.Add('DELETE');
DataModule2.ADOQuery1.SQL.Add('FROM (select* from Спецификация) Спецификация');
DataModule2.ADOQuery1.SQL.Add('WHERE Гост= '''+ComboBox1.Items.Strings[ComboBox1.ItemIndex]+'''');
DataModule2.ADOQuery1.Active:=true;
Помогите пожалуст, а то всю голову сломал))
Anatoly Podgoretsky (2010-05-15 21:09:00) [1]
> Не могу понять что не так.
Отсутствует вызов, на удаление.
Дмитрий (2010-05-15 20:38:00) [2]Большое спасибо. Все заработало)))
Плохиш (2010-05-15 20:36:00) [3]
> turbouser © (15.05.10 20:33) [24]
Подаёшь немощным?
turbouser (2010-05-15 20:34:00) [4]еще бы try except finally, но это домашнее задание.
turbouser (2010-05-15 20:33:00) [5]лови..
with ADOQuery1 do
begin
SQL.Text:='DELETE FROM ТаблицаГост WHERE Название=:poisk');
Parameters.ParamByName('poisk').Value:=ComboBox1.items[ComboBox1.ItemIndex];
ExecSQL;
end
Дмитрий (2010-05-15 20:28:00) [6]И если не затруднит вас Плохиш, покажите на примере как вы это реализовываете, если это конечно не затруднит?
Дмитрий (2010-05-15 20:27:00) [7]А где конкретнее они присутствуют?
Плохиш (2010-05-15 20:25:00) [8]
> Дмитрий (15.05.10 20:24) [20]
>
> Опечатка))
Ну так исправляйте и другии опечатки в вашем суперкоде.
Дмитрий (2010-05-15 20:24:00) [9]Опечатка))
Плохиш (2010-05-15 20:23:00) [10]
> Дмитрий (15.05.10 20:18) [16]
Что такое звёздочка в вашем сверхудивительном запросе?
Плохиш (2010-05-15 20:22:00) [11]DELETE
FROM (select* from Спецификация) Спецификация
WHERE Гост= 'чё-то'
> Гост- название таблицы
Вот это полёт фантазии. Это я уважаю
Отсыпте грибочков.
turbouser (2010-05-15 20:20:00) [12]
> ComboBox1.items.Strings[ComboBo x1.ItemIndex];
Жжуть..
ComboBox1.items[ComboBox1.ItemIndex];
Но всеравно Жжуть..
Дмитрий (2010-05-15 20:18:00) [13]ответов много ноя так ни че и не понял))). Не много подправил теперь не ругается но и не удаляет.
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('DELETE*');
ADOQuery1.SQL.Add('FROM ТаблицаГост');
ADOQuery1.SQL.Add('WHERE Название=:poisk');
ADOQuery1.Parameters.ParamByName('poisk').Value:=ComboBox1.items.Strings[ComboBo x1.ItemIndex];
Не могу понять что не так. Объясните пожалуста и если можно на примере.
Заранее благодарен.
Anatoly Podgoretsky (2010-05-15 19:46:00) [14]> Smile (15.05.2010 18:42:14) [14]
Тут возражай не возражай, а все равно переписать все нафиг.
Smile (2010-05-15 18:42:00) [15]возразить нечем, согласен
:)
Германн (2010-05-15 18:39:00) [16]
> но мне показалось
Когда кажется, креститься надо!
Народная мудрость. :)
Smile (2010-05-15 18:34:00) [17]в данном случае, конечно же, но мне показалось, что Германн просто органически не принимает такую конструкцию
:)
пардон за вальяжность, и прошу извинения
:(
turbouser (2010-05-15 18:28:00) [18]
> Smile (15.05.10 18:26) [10]
delete же. Exec нужно.
Smile (2010-05-15 18:26:00) [19]> Германн © (15.05.10 17:54) [5]
А, собственно, что "криминального" ты нашел в
DataModule2.ADOQuery1.Active:=true;
ну и тем более "бредового"
:)
Интерес, действительно, представляет уточнение от
Anatoly Podgoretsky © (15.05.10 18:08) [6] , а именно
Чему равен DataModule2.ADOQuery1.SQL.Text?
turbouser (2010-05-15 18:24:00) [20]А :) там delete :)