|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
08.05.2015, 16:18 | #1 |
Пользователь
Регистрация: 29.01.2015
Сообщений: 38
|
Связь подчиненных таблиц
Имеется БД, связанная с Access, TADOConnection, TADOTable, TDataSource, имеется 4 таблицы, 2 из них главные, 2 другие подчиненные соответственно, связь один ко многим. Подскажите пожалуйста, возможно ли реализовать связь один к одному между 2мя подчиненными таблицами и каким способом
|
08.05.2015, 17:43 | #2 |
Участник клуба
Регистрация: 10.08.2010
Сообщений: 1,389
|
http://www.online-academy.ru/demo/ac...teor/teor4.htm
http://ru.stackoverflow.com/question...BD%D1%8B%D1%85 http://www.specialist.ru/message/66920/1 http://www.codenet.ru/progr/vbasic/vb_db/1.php
E_MAIL: rijgvina7@yahoo.com
Последний раз редактировалось xxbesoxx; 08.05.2015 в 17:48. |
08.05.2015, 17:50 | #3 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
На сколько я помню связь 1:1 организовывается уникальностью ключей как первичного в главной таблице так и внешнего в подчиненной. Т.е. это определяется на стадии проектирования самой БД, а не потом, когда программу пишешь. Чтоб точно ответить на этот вопрос нужно видеть структуру БД.
I'm learning to live...
|
08.05.2015, 18:03 | #4 |
Пользователь
Регистрация: 29.01.2015
Сообщений: 38
|
Попробую описать процесс работы БД, есть таблица книги (главная) и экземпляры (подчиненная) связь один ко многим, т.е. у одной книги несколько экземпляров, далее таблица ученики(главная) и табл. книги на руках(подчиненная), т.е. один ученик может взять несколько книг. Так вот при добавлении строки в таблицу "книги на руках" должна происходить связь с таблицей "Экземпляры" по коду книги, т.е. ученик берет конкретный экземпляр. Я не знаю как это реализовать т.к. таблицы "Экземпляры" и "книги на руках" являются подчиненными следовательно с помощью свойства MasterField это не получится сделать. как должно быть есть схема из аксесс
Может я конечно не правильно понимаю, может возможно просто программно обращаться к определенной строке таблице(книги на руках) по коду из другой(экземпляры) Последний раз редактировалось Stilet; 08.05.2015 в 18:24. |
08.05.2015, 18:26 | #5 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Тыыкс... А у тебя избыточность.
Таблица Экземпляры тут вообще не нужна. Это тебе кто такую структуру придумал? Если препод то он дурень, если ты, то пересмотри ее, и убери лишние таблицы.
I'm learning to live...
|
08.05.2015, 18:37 | #6 |
Пользователь
Регистрация: 29.01.2015
Сообщений: 38
|
Может подскажите тогда как в БД включить экземпляры книг и как это организовать, а БД нашел на каком то сайте только экзешник, там было все именно так
|
08.05.2015, 18:52 | #7 | |
Участник клуба
Регистрация: 10.08.2010
Сообщений: 1,389
|
Цитата:
http://erpandcrm.ru/sbis_administrat..._tablicami.htm Связь "Один к одному" Этот тип связи используется редко, обычно с целью оптимизации работы базы данных. Например, чтобы постоянно "не таскать" все данные о сотруднике (а их достаточно много), таблица "Сотрудники" разбита на две - "Сотрудники" и "Сотрудники (расширение)". Записи этих таблиц связаны между собой отношением "один к одному". Для организации такой связи в обе таблицы помещается поле, содержащее адрес записи другой таблицы. Получается следующая схема: Потом можно посмотреть это http://kohanaframework.su/database/orm_connections1
E_MAIL: rijgvina7@yahoo.com
Последний раз редактировалось xxbesoxx; 08.05.2015 в 18:56. |
|
08.05.2015, 18:58 | #8 |
Пользователь
Регистрация: 29.01.2015
Сообщений: 38
|
Да это понятно, что такое связь один к одному, вопрос в том как это сделать на примере моей бд в delphi
|
08.05.2015, 19:08 | #9 |
Участник клуба
Регистрация: 10.08.2010
Сообщений: 1,389
|
Причем тут Delphi ? вам уже сказали что это относится проектирование БД
http://kohanaframework.su/database/orm_connections1
E_MAIL: rijgvina7@yahoo.com
|
08.05.2015, 19:11 | #10 |
Пользователь
Регистрация: 29.01.2015
Сообщений: 38
|
То есть БД не правильно спроектирована? Если так, то как правильно сделать с таким же функционалом?
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Связь таблиц. | victor5133 | Microsoft Office Access | 4 | 28.02.2013 18:55 |
Связь таблиц | flyinsky | Microsoft Office Access | 3 | 05.12.2010 11:23 |
Связь таблиц | Etlau | Помощь студентам | 0 | 27.12.2009 15:10 |
Связь таблиц | maximorion | БД в Delphi | 1 | 22.05.2009 11:30 |
Связь таблиц БД | kaa | БД в Delphi | 5 | 18.09.2007 18:29 |