Помощь - Поиск - Пользователи - Календарь
Полная версия: Проблема с таблицами в БД
Форум «Всё о Паскале» > Современный Паскаль и другие языки > Делфи
dron4ik
Имеется 2-е таблицы дочерняя и родительская..нужно их связать вот так:

Между отдельными таблицами БД может существовать связь, которая организуется через поля связи таблиц. Поля связи обязательно должны быть индексированными. Связь между таблицами определяет отношение подчиненности, при котором одна таблица является главной, а вторая - подчиненной.
Для организации связи между таблицами в подчиненной таблице используются следующие свойства:
 MasterSource – источник данных главной таблицы.
 IndexName – текущий индекс подчиненной таблицы.
 IndexFieldNames – поле или поля связи текущего индекса подчиненной таблицы.
 MasterFields – поле или поля связи индекса главной таблицы.

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

Таблицы работают через Table.
мисс_граффити
А в родительской уже создана соответствующая запись?
dron4ik
да, создана)

Добавлено через 1 мин.
т.е. родительская таблица не пустая...
dron4ik
упс...чуть ошибся...когда я добавил запись в дочернюю таблицу и жму "сохранить" вылетает...ошибка такая: Key violation...а потом при последующем запуске бд выходит ошибка index is out of date.
мисс_граффити
dron4ik, не уверена, что ты меня правильно понял...
Не знаю, про что у тебя база. Ну пример: учебные группы - студенты
Когда добавляешь студента, УЖЕ должна быть созданна именно та группа, в которой он учится. Если у тебя будет создано хоть сто групп, но других - его добавить не удастся (если контроль настроен, разумеется).

В идеале - покажи содержимое таблиц и то, что пытаешься добавить
dron4ik
Ты права...я не умел пользоваться таблицами..надо было сначало добавлять в родительскую таблицу а потом только в дочернюю..теперь нет ошибок smile.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.