Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.10;
Скачать: CL | DM;

Вниз

Как правильно поменять текущий индекс в IBTable .   Найти похожие ветки 

 
Andrio ©   (2003-03-24 11:02) [0]

Сразу хочу заметить что таких глюков не наблюдалось в Paradox.
Я использую FireBird 1.0.3

Имеются 2 таблицы - главная и детальная, размещенные в 2-х компонентах TIBTable.
Главная:
CREATE TABLE MAINBASE (
LICSCET integer not null,
FNAME varchar(25) not null,
INAME varchar(15) not null,
ONAME varchar(18) not null,
/* Остальные поля не принципиальны*/
PRIMARY KEY (LICSCET),
FOREIGN KEY (DOMNUMBER) references DOMA
On Delete CASCADE
On Update CASCADE

Для этой таблицы также построен дополнительный индекс:
CREATE INDEX MAINBASE_NameIDX ON MAINBASE (FNAME, INAME, ONAME)

Детальная таблица:
CREATE TABLE NAMEBASE (
PersNumber smallint not null,
LICSCET integer not null,
FNAME varchar(25) not null,
INAME varchar(15),
ONAME varchar(18),
PRIMARY KEY (PersNumber, LICSCET),
FOREIGN KEY (LICSCET) references MAINBASE
On Delete CASCADE
On Update CASCADE

Компонент IBTable в свойствах masterTable и MasterField ссылается на главную таблицу и поле LICSCET.

При изменении текущего индекса в главной таблице:
MainBaseTable.IndexFieldNames:="LICSCET"
или
MainBaseTable.IndexFieldNames:="FNAME;INAME;ONAME"
и попытке вставить запись в детальную таблицу методами Unsert или Append возбуждается исключительная ситуация и Делфя выплевывает следующую муть:
Либо: Несоответствие типа столбца еще чему-то. (Если активен не уникальный индекс "FName;IName;OName")
Либо: Access Violation (Если активен уникальный индексиндекс "LicScet")

До применения метода "IndexFieldNames" ошибок не возникает.
Также все идет нормально если отключить Ссылку в детальной таблице (компоненте) на главную (св-во: MasterSource).

Как правильно менять текущий индекс в главной таблице чтобы подчиненные не глючили при вставке записей?
Помогите Pleeeeese! :))


 
Johnmen ©   (2003-03-24 12:08) [1]

Не использовать IBTable ! Использовать IBDataSet.



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

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

Наверх




Память: 0.47 MB
Время: 0.026 c
6-30497
elf_123
2003-02-18 16:39
2003.04.10
Хук+сеть


1-30357
Metil
2003-04-01 01:40
2003.04.10
Слить файлы воедино


1-30451
Lexa
2003-03-28 23:47
2003.04.10
Как убрать мерцание?


3-30262
OneOfTheFew
2003-03-20 13:29
2003.04.10
DELPHI, Paradox и древовидные структуры данных


14-30604
ass2
2003-03-25 06:06
2003.04.10
Немного о раскрутке программы и сайта