Member 14549747 Ответов: 1

Могу ли я соединить переменные из разных таблиц в mysql ?


Допустим, у меня есть два стола . Первая-это таблица отдела кинотеатров, в которой имена всех кинотеатров представлены в виде переменных в столбце с именем name . Второй-это стол для просмотра фильмов, в котором есть отдел кинотеатров, в котором воспроизводится фильм . Допустим, это столбец с именем dept_name .Теперь предположим, что я добавляю кинотеатр в первую строку названия в таблице кинотеатров . Как значение конкретной строки может быть перенесено в соответствующее значение в dept_name ?

Что я уже пробовал:

Я использую phpmyadmin для использования базы данных MySQL . Я использовал oracle data modeler для создания реляционной модели, чтобы передать код ddl и создать таблицы базы данных . Я не знаю, что мне теперь делать .

1 Ответов

Рейтинг:
1

OriginalGriff

Подумайте о своих данных: если у вас нет информации, которая связывает название отдела с кинотеатром, вы не можете "вернуться" из фильма в кинотеатр через его название отдела.

Я бы создал три таблицы, а не две:

Cinemas
ID, Name, Address, BillingAddress, ...

Departments
ID, CinemaID, Name, SeatingCapacity, ...

Movies
ID, Name, Genre, StartDate, EndDate, ShowTime, DepartmentID, ...
А xxxIDs-это FOREIGN KEYс соответствующим идентификатором таблицы.

Тогда это простой вопрос для использования SQL-соединения[^] извлекать информацию по мере необходимости, не дублируя никакой информации.


Member 14549747

У меня есть информация, что в одном киноотделе есть конкретный номер фильма . Соединения кажутся интересным выводом.

OriginalGriff

Может быть, и сегодня - но будет ли он показывать тот же фильм на следующей неделе?
Объединения делают жизнь проще, потому что они являются тем, что SQL Server и MySql-это "реляционные базы данных", что означает, что они очень заботятся о взаимоотношениях между битами данных и очень, очень хорошо их обрабатывают. Поверьте мне, использование соединений очень просто и значительно сокращает количество дублирования. И это означает, что вам будет легче поддерживать ваши данные в чистоте и точности - так называемая "целостность данных", которую вы искренне хотите, поскольку она быстро превращается в кошмар, чтобы разобраться, когда DI будет скомпрометирован! Дублированные данные легко приводят к данным, которые не соответствуют другим строкам или таблицам, и тогда DI начинает быстро распутываться.

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