Вниз
Скачать: CL | DM;

Ошибка: Недостаточно сведений ключевого поля для обновления   Найти похожие ветки 

 
Plm ©   (2007-07-18 15:13) [0]

Добрый день.
Посоветуйте как избежать данную ошибку.
Данные отображаю через компонент DBGrid (ADOTable-> DataSourse -> DBGrid). Существует необходимость рефрешить данные.
На Close/Open, Refresh, Active false/true вылетает данная ошибка. Я так предпологаю, что она возникает из-за того, что в таблице нет Primary Key. Возможно ли как то обойти это? Или все же прийдется создать дополнительно колонку с счетчиком и назначить ей PK или одному из существующих полей?


 
sniknik ©   (2007-07-18 15:31) [1]

> Возможно ли как то обойти это?
добавить Primary Key? если неприемлемо то скорее всего нет. попробуй сам составить запрос на обновление, не надеясь на ADO, сможешь так чтобы для любой записи в таблице на обновление шла гарантированно 1 запись... можеш слать рекламацию мелкософту.

> или одному из существующих полей?
попробуй... если они там у тебя по сумме полей не уникальны (ошибка говорит об этом) то найти единичное уникальное поле будет проблематично... ;)


 
Ega23 ©   (2007-07-18 15:33) [2]

Приводи таблицы к 3-й нормальной форме.


 
Plm ©   (2007-07-18 16:00) [3]

Самое удивительно то, что с другими такими же таблицами работает


 
Ega23 ©   (2007-07-18 16:05) [4]


> Самое удивительно то, что с другими такими же таблицами
> работает


Просто у них повторов в данных нет.


 
Plm ©   (2007-07-18 17:04) [5]

На той таблице, что возникает ошибка, повторов тоже нет.


 
sniknik ©   (2007-07-18 17:21) [6]

ошибка говорит что есть...

перепроверься, и учти что блоб/мемо поля в условиях не участвуют (черезчур длинные строки вроде тоже, не уверен, а проверять не хочется).


 
Ega23 ©   (2007-07-18 17:22) [7]


> черезчур длинные строки вроде тоже, не уверен, а проверять
> не хочется


>255 символов


 
Stanislav ©   (2007-07-18 17:26) [8]


> Или все же прийдется создать дополнительно колонку с счетчиком
> и назначить ей PK или одному из существующих полей?


А в чем сложность?


 
SlymRO ©   (2007-07-19 05:11) [9]

как обычно... значение по умолчанию в таблице убери



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.017 c
2-1194511180
Ega23
2007-11-08 11:39
2007.12.02
Отловить момент активизации фрейма


2-1192410570
Номер
2007-10-15 05:09
2007.12.02
Скажите, как загрузить курсор из потока?


15-1193540042
Асм
2007-10-28 05:54
2007.12.02
ассемблер


6-1173675345
paradox01
2007-03-12 07:55
2007.12.02
TServerSocket and TClientSocket


3-1184680236
BlackCat
2007-07-17 17:50
2007.12.02
Помогите разобраться с запросом или кодом... голову сломал...




   Наверх