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

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

проблема с удалением записей в dbf [D7, dBase, FoxPro]


Ceval ©   (2004-07-28 21:27:00) 

Здравствуйте!!
Подскажите в чем дело ? Работаю с dbf-файлом
При помощи ADOTable и на удаления записи написал такой код:

begin
 if adoTable1.RecordCount<>0 then
begin
 if MessageDlg('Вы действительно хотите удалить эту запись?',
   mtConfirmation, [mbYes, mbNo], 0) = mrYes then
 begin
  adoTable1.Delete;
 end;

После удаления нескольких записей выскакивает ошибка:
Key column information is insufficient or incorrect.
Too many rows were aftcted by update.
как решить эту прблему и вообще что это такое ?
Подскажите !
Зарания благодарин!!


46_55_41_44   (2004-08-11 08:32:00) [1]

Сделай лучше с помощью ADOQuery!
With ADoQuery1 do
begin
 Active := False;
 Sql.Clear;
 Sql.Add('Delete From Table1');
 Sql.Add('Where Field1 = XXX');
 ExecSql;
end;
Мой тебе совет ничего не делай с помощью Table... Работает долго и не эффективно!!!
А проблема может быть в том, что ты не добавил AdoTable1.ApplyUpdates!
Хотя я могу и ошибаться, уж больно давно я не работаю с TTable...


sniknik   (2004-08-11 08:04:00) [2]

I need help   (11.08.04 02:08) [8]
оформи свое возмущение в вопрос, добавь инфы о ситуации/используемых компанентах/базе, укрась кусочками кода с пояснениями и выкладывай в своей ветке. иначе херня какаято получается.


menart   (2004-08-11 07:43:00) [3]


> I need help   (11.08.04 02:08) [8]


Значит он у тебя не уникальный!


I need help   (2004-08-11 02:08:00) [4]

Помогите, плиз. У меня такая же ошибка возникает при удалении записи из таблицы. Но первичный ключ у меня есть! В чём тогда проблема?


Вовчик   (2004-07-29 18:32:00) [5]


> Ну хорошо перевел это приблизительно так :
>  Key column information is insufficient or incorrect.
>    Ключевая информация  недостаточна или неправильна.
>    Too many rows were aftcted by update.
>    Слишком много тяг  были aftcted модифицированы.
> где-то так
> Ну хорошо а решения то какое ???!!!

Ну если приблизительно, то и решение будет приблизительным ;)


ЮЮ   (2004-07-29 03:28:00) [6]

>Ну хорошо а решения то какое ???!!!

При отсутствии первичный ключа (что само по себе нонсенс) не допускать появления в таблице записей, имеющих одинаковые значения всех полей. Иначе, когда ты пытаешься удалить как тебе кажется "текущую" запись, под это условие попадают несколько записей, что недопустимо, о чем и вещает, совственно, эта ошибка


Fay   (2004-07-28 21:56:00) [7]

Хреново.


ceval   (2004-07-28 21:51:00) [8]

<нет


Fay   (2004-07-28 21:46:00) [9]

Давай так. У тебя первичный ключ есть (я не про constraint)?


senderw   (2004-07-28 21:43:00) [10]

Ну хорошо перевел это приблизительно так :
  Key column information is insufficient or incorrect.
   Ключевая информация  недостаточна или неправильна.
    Too many rows were aftcted by update.
   Слишком много тяг  были aftcted модифицированы.
где-то так
Ну хорошо а решения то какое ???!!!


Вовчик   (2004-07-28 21:33:00) [11]

Переведи фразу
Key column information is insufficient or incorrect.
Too many rows were aftcted by update.

на русский язык... В этом все и дело ;)


Наверх

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