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

Multiple records found, but only one was expected. Как бороть?   Найти похожие ветки 

← →
Bams ©   (2003-09-02 16:53) [0]

Пользуется BDE, Access, D7

Есть таблица в базе MS Access:
#==============================================================
# Table: tblMain
#==============================================================
CreateTble C=tblMain N="tblMain"
(
C=IDMain T=AUTOINCREMENT P=Yes M=Yes N="IDMain",
C=IDClass T=INTEGER P=No M=No N="IDClass",
C=IDProducer T=INTEGER P=No M=No N="IDProducer",
C=strElement T=STRING P=No M=No N="strElement",

);

Настроен TTable (AutoRefresh:=True)

Следующий код при повторяющихся значениях IDClass,IDProducer,strElement выдает эксепшн Multiple records found, but only one was expected. Но IDMain то проинкрементировался!!!
Выходит что ключ на самом то деле не по IDMain???

tblMain.Append();
tblMain["IDClass"]:=FIDClass;
tblMain["IDProducer"]:=FIDProducer;
tblMain["strElement"]:=FstrElement;
tblMain.Post();


Объясните в чем грабли пожалуйста, и как это лечить. Спасибо.


← →
sniknik ©   (2003-09-02 17:15) [1]

есть такое свойство Required у поля IDMain надо в false поставить, типа tblMain["IDMain"].Required := ...


← →
Bams ©   (2003-09-02 17:27) [2]

2 sniknik
Оно и так False. А вот поменял на True - получил:
Field "IDMain" must have a value

Выходит перед постом "IDMain" еще не имеет никакого значения? А уникальный ключ в этот момент строится по всем остальным полям или как???? Хотя я ведь явно указал на "IDMain" как PrimaryKey.
Бррр..


← →
sniknik ©   (2003-09-02 17:47) [3]

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


← →
Bams ©   (2003-09-03 12:07) [4]

Уникальность не нарушена. Да и через инсерт делал, та же ерунда происходит. Наверно действительно с BDE слезать надо.



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

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



Память: 0.46 MB
Время: 0.015 c
6-82361
aach_ua
2003-07-26 19:41
2003.09.25
Правильно обновлять прогу через инет


6-82374
test
2003-07-24 15:53
2003.09.25
Как переслать по TCP TStringList (пример пожалуйста)


1-82276
wdsergius
2003-09-15 11:15
2003.09.25
Как в TreeView - программно установить маркер на любой элемент???


3-82096
Avsam
2003-09-04 16:09
2003.09.25
Оracle 9i. Список онлайн-подключений.


7-82511
Андрей_П
2003-07-14 17:50
2003.09.25
CD-ROM




   Наверх