Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Недост. сведения о ключ. поле. Обновление одного поля не удается [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]

извиняюсь не три поля в таблице а целых пять!


Наверх

Титульная страница Поиск, карта сайта Написать письмо