Форум программистов, компьютерный форум, киберфорум
Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
 Аватар для index58
59 / 25 / 10
Регистрация: 01.07.2016
Сообщений: 153

В каких ситуациях межтабличную связь надо делать не через id, а обязательно через другое поле?

07.04.2023, 00:17. Показов 3957. Ответов 55
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет.
Главный вопрос темы:
1) В каких ситуациях межтабличную связь надо делать не через id, а обязательно через другое поле?
Ну, а если обязательных таких ситуаций не знаете, то второй вопрос:
2) В каких ситуациях удобнее делать межтабличную связь не через id, а через другое поле, и чем именно это удобнее?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.04.2023, 00:17
Ответы с готовыми решениями:

Надо добавить поле приход через кассу и через расчетный счет, как это сделать 1с 8 3 ут?
надо добавить поле приход через кассу и через расчетный счет как это сделать в отчет расчеты с клиентами сам пытался добавить отчет...

Как вывести матрицу через Tedit, с размерностью заданной через другое поле Tedit
как вывести матрицу через Tedit ? с размерностью заданной через другое поле Tedit

Обязательно резолвить через nslookup? Через ping не то же самое получается?
Обязательно резолвить через nslookup? Через ping не то же самое получается? Ip же один у домена и через ping и через nslookup.

55
 Аватар для index58
59 / 25 / 10
Регистрация: 01.07.2016
Сообщений: 153
09.04.2023, 15:09  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от VinniPuh Посмотреть сообщение
умозрительно как то всё расчитывает, а не на реальном примере.
Эту тему я создал, чтобы НАЙТИ реальные примеры других людей, а не показать свои.
0
Эксперт MS Access
 Аватар для ltv_1953
17536 / 7288 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
09.04.2023, 15:15
Цитата Сообщение от index58 Посмотреть сообщение
Лишусь я чего-нибудь в моём примере?
Типа что такое ограничение внешнего ключа Вы не знаете? В Вашем примере Вы можете изменить категорию в таблице Контрагенты_Бонусы_К, даже если есть подчиненные в таблице Контрагенты_Бонусы_К_Ф (режим каскадного удаление/обновления не включен). Все.
1
 Аватар для index58
59 / 25 / 10
Регистрация: 01.07.2016
Сообщений: 153
09.04.2023, 16:39  [ТС]
Цитата Сообщение от ltv_1953 Посмотреть сообщение
Типа что такое ограничение внешнего ключа Вы не знаете? В Вашем примере Вы можете изменить категорию в таблице Контрагенты_Бонусы_К, даже если есть подчиненные в таблице Контрагенты_Бонусы_К_Ф (режим каскадного удаление/обновления не включен). Все.
То есть, я теряю защиту от дурака в одной связи. Правильно понял?

А если сделать вот так, как я в первый раз предложил на словах, и ещё добавить <представление>, в котором связаны все эти шесть таблиц в одну широкую таблицу, где есть всё, то станет удобно делать SELECT <всё что нужно> FROM <представление>?
0
Эксперт MS Access
 Аватар для ltv_1953
17536 / 7288 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
09.04.2023, 16:43
Угу. Вы просто допускаете, что к записи с категорией рельсы будет подчиненная гайки, дюймовые. Для Вас это нормально? Тогда вперед ... . Ответов больше не будет - утомили.
0
 Аватар для index58
59 / 25 / 10
Регистрация: 01.07.2016
Сообщений: 153
09.04.2023, 17:16  [ТС]
Цитата Сообщение от ltv_1953 Посмотреть сообщение
Вы просто допускаете, что к записи с категорией рельсы будет подчиненная гайки, дюймовые. Для Вас это нормально?
Я не понял смысл написанного. Я извиняюсь, но для меня пример с рельсами и гайками непонятен.
Цитата Сообщение от ltv_1953 Посмотреть сообщение
Ответов больше не будет - утомили.
Ещё раз извиняюсь. Я ж просто спрашиваю. У меня опыта мало, поэтому я чего-то не понимаю. Я не прикидываюсь, я искренне.
0
 Аватар для VinniPuh
9147 / 6176 / 594
Регистрация: 27.03.2013
Сообщений: 20,047
09.04.2023, 17:44
Сделаю ка я доброе дело.
Понижу репу ТСу.
Ибо аж на 3 страницы ответов и попыток ему помочь,
А он даже ни кому и ни разу не сказал простого - Спасибо.
не говоря уж о такой мелочи как про нажатие кнопки - Спасибо
Только всё больше выдвигает требований к добровольным помогальщикам.
Видимо нужно как у собачки Павлова, вырабатывать условные рефлексы.
Для начала, - Хрясть и - 10% от репы.
0
 Аватар для index58
59 / 25 / 10
Регистрация: 01.07.2016
Сообщений: 153
09.04.2023, 18:12  [ТС]
Кликните здесь для просмотра всего текста
Цитата Сообщение от VinniPuh Посмотреть сообщение
А он даже ни кому и ни разу не сказал простого - Спасибо.
Неправда.
Цитата Сообщение от VinniPuh Посмотреть сообщение
Только всё больше выдвигает требований к добровольным помогальщикам.
Неправда. Ни одного требования с моей стороны здесь нет.
Цитата Сообщение от VinniPuh Посмотреть сообщение
Ибо аж на 3 страницы ответов и попыток ему помочь
Я никого не заставляю мне отвечать. Я создал тему: хотите пишите в ней, хотите не пишите, это Ваш выбор.
0
 Аватар для VinniPuh
9147 / 6176 / 594
Регистрация: 27.03.2013
Сообщений: 20,047
09.04.2023, 18:24
Цитата Сообщение от index58 Посмотреть сообщение
это Ваш выбор.
Согласен.
Если ответственные лица не озаботятся, то -
Уже до вечера исправлю свою оплошность.
Ибо вместо -10% от силы отзыва, нечаянно поставил +10%
Поставлю -100%
0
Модератор
 Аватар для D1973
9946 / 6481 / 2460
Регистрация: 21.01.2014
Сообщений: 27,465
Записей в блоге: 3
09.04.2023, 18:40
Цитата Сообщение от VinniPuh Посмотреть сообщение
Поставлю -100%
Ну зачем уж так лютовать? Не лучше ли оставить ТС-а в покое, просто не реагировать на эту тему?
0
 Аватар для VinniPuh
9147 / 6176 / 594
Регистрация: 27.03.2013
Сообщений: 20,047
09.04.2023, 19:03
Цитата Сообщение от D1973 Посмотреть сообщение
просто не реагировать на эту тему?
Для меня это принципиальный вопрос.
Написал Микаэлю, что бы исправил мою оплошность.
Если ТС не соизволит помолиться всем Богам и + не изменится на минус, то однозначно +10 изменится на -100.
На ТСа столько времени затрачено, столь немыслимо авторитетные личности привлечены в помощь, я даже своей любимой жене столько времени наверное не уделяю.
Ну разве что только 8 марта.
А ТСу всё как то не так.
Даже ни разу ни кому простого - Спасибо не сказал.
Какой ни то мажор наверное.
Привык наверное из за папочкиных денег, что только ему все должны.
Короче расписывать свои мотивы более не буду.
Решение принято.
1
 Аватар для alecko5
885 / 148 / 35
Регистрация: 05.08.2022
Сообщений: 681
12.04.2023, 16:01
Цитата Сообщение от index58 Посмотреть сообщение
1) В каких ситуациях межтабличную связь надо делать не через id, а обязательно через другое поле?
такое случается когда используете EAV, но иерархий не одна а несколько - пример из практики
есть расходники: скобы, стреп-лента, пленка и т.д. - при формировании продукта - это расходники-пленка, расходники-скобы , но у расходников есть еще разделение по группам, поэтому в EAV приходится создавать второе поле, не identity, не Unique даже и по этому полю создавать связь.
1
 Аватар для index58
59 / 25 / 10
Регистрация: 01.07.2016
Сообщений: 153
13.04.2023, 00:58  [ТС]
Цитата Сообщение от alecko5 Посмотреть сообщение
такое случается когда используете EAV, но иерархий не одна а несколько - пример из практики
есть расходники: скобы, стреп-лента, пленка и т.д. - при формировании продукта - это расходники-пленка, расходники-скобы , но у расходников есть еще разделение по группам, поэтому в EAV приходится создавать второе поле, не identity, не Unique даже и по этому полю создавать связь.
А можете привести пример структуры? А то я пробую для себя составить пример, но у меня не получается. Видимо, опыта не хватает представить то, что Вы описали.
0
 Аватар для alecko5
885 / 148 / 35
Регистрация: 05.08.2022
Сообщений: 681
13.04.2023, 09:14
на 1-й скрин из 3-х частей состоит: в1-й общее разделение по группам, а в третьей показано ,что одна группа еще разделена на подгруппы, т.е. введен дополнительный уровень иерархии помимо основной.
на втором скрине - альтернативная иерархия, где у расходников только группы, у остальных - как обычно.
Миниатюры
В каких ситуациях межтабличную связь надо делать не через id, а обязательно через другое поле?   В каких ситуациях межтабличную связь надо делать не через id, а обязательно через другое поле?  
1
 Аватар для index58
59 / 25 / 10
Регистрация: 01.07.2016
Сообщений: 153
13.04.2023, 23:11  [ТС]
Цитата Сообщение от alecko5 Посмотреть сообщение
в1-й общее разделение по группам, а в третьей показано ,что одна группа еще разделена на подгруппы, т.е. введен дополнительный уровень иерархии помимо основной.
Спасибо, посмотрел.
Вот сижу и пытаюсь понять:
В таблице "tblEAV" каждая запись означает группу каких-то материальных штуковин (Продукция, Полуфабрикат, Клей,...).
В таблице "tblHaract" каждая запись означает тоже группу каких-то материальных штуковин (Бумага, Картон, Прокладка,...).
Скажите, пожалуйста, а почему эти группы хранятся в разных таблицах? У них есть какое-то важное отличие, или это просто так исторически сложилось в проекте?
0
 Аватар для alecko5
885 / 148 / 35
Регистрация: 05.08.2022
Сообщений: 681
14.04.2023, 10:43
так сделано специально.
tblEAV - это EAV, в EAV можно вместить вообще все - но это сильно неудобно в части интерфейса, обработки и пр.-в этой таблице все собрано в кучу - настройки, сущности ,единицы измерения, контрагенты, персонал, структура формы для динамического форматирования, сообщения в диалоговых окнах и их заголовки, статусы, параметры экспорта и пр.
tblHaract - это уже плоская таблица, которая расширяет EAV, в ней все по полочкам разложено, в ней есть дополнительные зависимости,(например eizm - единицы измерения, которые хранятся в tblEAV)
она удобна для работы со стороны интерфейса пользователя,
она включает в себе многосправочников сущностей - здесь показаны материальные средства, а есть параметры, характеристики и пр.-у них свой код vid (который очевидно тоже зависим от tblEAV).
в описанном случае создана дополнительная EAV иерархия в tblHaract. для чего был использован не ключ, поскольку ключ уже занят.
1
 Аватар для index58
59 / 25 / 10
Регистрация: 01.07.2016
Сообщений: 153
14.04.2023, 19:30  [ТС]
Цитата Сообщение от alecko5 Посмотреть сообщение
так сделано специально.
Понял. Спасибо.

В целом, мне уже достаточно примеров ситуаций.
Всем спасибо за участие в теме.
Но если у кого-то есть ещё пример, то можно тоже привести, я с удовольствием его рассмотрю.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.04.2023, 19:30

Выбранные значения из поля со списком через запятую помещаются в другое поле
Как можно реализовать такое событие, если, к примеру, дважды кликать ЛКМ по элементу из поля со списком? В интернете по SQL нахожу только...

Выбранные значения из поля со списком через запятую помещаются в другое поле
Как можно реализовать такое событие, если, к примеру, дважды кликать ЛКМ по элементу из поля со списком? В интернете по SQL нахожу только...

Обращение к одному дочернему полю родительского класса через другое дочернее поле
Здравствуйте, пишу на форумы первый раз, потому, пожалуйста, не горите, если что не так, но идентичную проблему я не нашел. Суть проблемы:...

Запись файла через одно приложение, а чтение через другое
Есть 2 консольные программы. 1-я пишет в файл &quot;z&quot; текст, 2-я читает с файла &quot;z&quot; этот текст и работает с ним. Подскажите как...

Подскажите,пожалуйста как тут делать ,а там получается таблицу надо создать через MyAdmin->OpenServer или наоборот
Необходимо создать таблицу dishes, имеющую следующую структуру: СRЕАТЕ ТАВLЕ dishes ( dish_id INT, dish_name VARCНAR (255), ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
56
Ответ Создать тему
Новые блоги и статьи
Установка нескольких штампов электронной подписи в строго определенных местах файла docx
ВладимирСамохин 19.07.2026
(В!) Работа с Электронной подписью - это неотъемлемая часть современного документооборота. Но что делать, если нужно поставить несколько штампов электронной подписи в строго определенных местах. . .
сукцессия 35. Научная статья о проделанной работе
anaschu 19.07.2026
Написал в формате латекс и пдф
Вангую, что это не пройдёт модерацию, и на неделе я запущу свой сервер.
Hrethgir 19.07.2026
Эта публикация сейчас в песочнице и ждёт приглашения. https:/ / habr. com/ ru/ sandbox/ 295048/ начало и оглавление - Как «пернатого» заставить осваивать новые горизонты опыта через масштабирование. . .
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
сукцессия 30. Массив проверяющих друг друга моделей
anaschu 18.07.2026
Архитектура сети взаимопроверяющих моделей микоризной сукцессии (v2. 0) Развитие тензорного ОДУ-ядра и создание кросс-платформенного калибровочного полигона Уважаемые коллеги! В продолжение. . .
Грибы - это женщины, деревья - это мужчины. Анти инь янь для союза мужчины и женщины.
anaschu 18.07.2026
ГЛАВНЫЙ НАУЧНО-ФИЛОСОФСКИЙ ВЫВОД: Сексуально-Репродуктивный Капитализм против Государства Моногамии Коллеги, мы вышли на финишную прямую 20-мерного ОДУ-моделирования вековой сукцессии (ветка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru