Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.25;
Скачать: 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 вся ветка

Текущий архив: 2003.09.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
14-82457
Aspirin
2003-09-07 17:03
2003.09.25
Как сделать чтобы форма была в центре экрана?


3-82060
Alik$
2003-08-22 15:47
2003.09.25
Report как создать свою форму для принтера


3-82050
Xmen
2003-09-02 10:17
2003.09.25
Связь с базой MySQL через BDE в сети


1-82297
InspectorNET
2003-09-14 07:36
2003.09.25
Как отобразить в Label титль веб-страницы (показываемой webbrowse


3-82031
Vlad
2003-09-06 10:29
2003.09.25
Вопрос по InterBase