![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Недост. сведения о ключ. поле. Обновление одного поля не удается [D6, MSAccess]
inlimbo © (2006-12-28 09:42:00)Имеется таблица в базе MSAccess: три поля , ни одного индексного(имя Sum_lgots). В проекте делфи для связи с этой таблицей используется комп. TADOTable .
требуется просто тупо проставить во всех записях таблицы какой-нить символ в одно пустое поле(поле это уже в таблице есть, оно текстовое 12 симв)
Sum_lgots.Open ;
While not Sum_lgots.Eof do
Begin
sum_lgots.Edit ;
Sum_lgots.Fields[4].Value := '*' ;
Sum_Lgots.Next ;
End ;
Sum_lgots.Close
при выполнении выдает ошибку на операторе присваивания:
Недост. или неполные сведения о ключевом поле. Обновление влияет на слишком большое число строк.
Что я упустила?
Anatoly Podgoretsky (2006-12-28 13:24:00) [1]> inlimbo (28.12.2006 9:42:00) [0]
Используй запрос UPDATE
inlimbo (2006-12-28 11:42:00) [2]спасибо виталий , заработало
Виталий Панасенко (2006-12-28 11:11:00) [3]Установи CursorLocation=clUseServer, можно еще и TableDirect=True
Sergey13 (2006-12-28 10:56:00) [4]> [1] inlimbo (28.12.06 09:43)
> извиняюсь не три поля в таблице а целых пять!
И ни одного ключевого. О чем тебе система и сообщила. Другими словами она не может однозначноидентифицировать изменяемую запись.
Roma L (2006-12-28 09:54:00) [5]Надо писать Fields.Fields[4].AsString:= '*';
или FieldByName('ИМя поля').AsString:=...
inlimbo (2006-12-28 09:43:00) [6]извиняюсь не три поля в таблице а целых пять!