![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Не удаляется запись из базы [D5, MSSQL, Paradox]
Zilog © (2004-08-31 12:53:00)Кто нить может подсказать в чем дело?
Есть две группы, переключаются кнопками.
Выводится либо одна либо другая.
with QPers do begin
Close;
SQL.Clear;
SQL.Add('SELECT * FROM persons WHERE PGroup = :gr ORDER BY PGroup,PFio');
ParamByName('gr').AsString := TabControl1.Tabs.Strings[TabControl1.TabIndex];
Open;
end;
DBGridPersons.Update;
Дык вот, глюк в том, что из второй группы нельзя никого удалить почему то....
Удаление происходит так:
DSPers.DataSet.Open;
QPers.Edit;
QPers.Delete;
QPers.ApplyUpdates;
QPers.CommitUpdates;
Ошибку выводит такую:
Update Filed
Используемые компоненты:
DataSource
Query
UpdateSQL
Sergey13 (2004-09-01 15:20:00) [1]215] Zilog © (01.09.04 15:18)
>Короче такая же петрушка с изменением полей:
А подумать если.
update persons
set
PFio = :PFio,
PCard = :PCard,
PGroup = :PGroup,
PWBegin = :PWBegin,
PWEnd = :PWEnd,
PWDopusk = :PWDopusk,
PWCost = :PWCost,
PWAddition = :PWAddition,
PWFine = :PWFine,
PWIndividual = :PWIndividual
where
PId = :OLD_PId
Книжек бы надо почитать, ИМХО.
Zilog (2004-09-01 15:18:00) [2]Ай-йа-яй!!!!.....
Короче такая же петрушка с изменением полей:
update persons
set
PFio = :PFio,
PCard = :PCard,
PGroup = :PGroup,
PWBegin = :PWBegin,
PWEnd = :PWEnd,
PWDopusk = :PWDopusk,
PWCost = :PWCost,
PWAddition = :PWAddition,
PWFine = :PWFine,
PWIndividual = :PWIndividual
where
PFio = :OLD_PFio and
PCard = :OLD_PCard and
PGroup = :OLD_PGroup and
PWBegin = :OLD_PWBegin and
PWEnd = :OLD_PWEnd and
PWDopusk = :OLD_PWDopusk and
PWCost = :OLD_PWCost and
PWAddition = :OLD_PWAddition and
PWFine = :OLD_PWFine and
PWIndividual = :OLD_PWIndividual
Подскажите pls!
Zilog (2004-09-01 15:12:00) [3]Спасибо!!!! Заработало!!!
ЮЮ (2004-09-01 09:39:00) [4]Вместо
delete from persons
where
PFio = :OLD_PFio and
PCard = :OLD_PCard and
PGroup = :OLD_PGroup and
PWBegin = :OLD_PWBegin and
PWEnd = :OLD_PWEnd and
PWDopusk = :OLD_PWDopusk and
PWCost = :OLD_PWCost and
PWAddition = :OLD_PWAddition and
PWFine = :OLD_PWFine and
PWIndividual = :OLD_PWIndividual
необходимо и достаточно
delete from persons
where
PId = :OLD_PId
Sergey13 (2004-08-31 14:59:00) [5]Ну дык приведи наконец текст DeleteSQL то.
Zilog (2004-08-31 14:48:00) [6]люди.. нужна помощь!!!
вот тут вроде накопали люди что то в моем глюке:
http://www.sql.ru/forum/actualthread.aspx?bid=20&tid=118671&pg=-1
Zilog (2004-08-31 14:09:00) [7]id,fio,card,group...
Наталия (2004-08-31 14:02:00) [8]Структуру таблицы приведи.
Zilog (2004-08-31 13:57:00) [9]Есть... Я же говорю - из первой группы все удаляется и добавляется на ура.
Наталия (2004-08-31 13:55:00) [10]Скорее всего в твоей таблице persons нет первичного ключа. И есть дублирующиеся записи. BDE не может разобрать, какую-же из записей нужно удалить...
Zilog (2004-08-31 13:44:00) [11]База paradox
Zilog (2004-08-31 13:43:00) [12]Edit убрал - все равно, выскакивает исключение 'Update Filed'
[stone] to [Zilog] ORDER BY PGroup,PFio делает твой запрос не редактируемым
Хм.. странно, эта же сортировка на вывод первой группы - и все работает... может что то еще?
KSergey (2004-08-31 13:13:00) [13]Update Filed - это такой текст ошибки? Что-то с трудом верится...
Астроном (2004-08-31 13:11:00) [14]DSPers.Dataset.Datasource.Delete
Max (2004-08-31 13:10:00) [15][stone] to [Zilog] ORDER BY PGroup,PFio делает твой запрос не редактируемым
Reindeer Moss Eater (2004-08-31 12:55:00) [16]Зачем Edit?
Зачем
QPers.ApplyUpdates;
QPers.CommitUpdates;
?