|
#1
|
|||
|
|||
Структура базы
Здравствуйте, в очередной раз обращаюсь за помощью, в этот раз разбираюсь со структурой базы данных. Подскажите как правильно сделать если нужно с помощью SQL -запросов выводить содержание сразу из нескольких таблиц.
Например, представим что у меня есть пару таблиц "спортсмены" содержащая некоторые личные данные и "нормативы" собственно их она и содержит. Как правильно сделать чтоб выводить ванные из обеех таблиц одновременно? соответственно при удалении например спортсмена все его нормативы тоже должны удалиться! Спасибо! |
#2
|
|||
|
|||
Код:
SELECT A.*, B.* FROM A LEFT JOIN B ON A.ID = B.ID Ну и при дизайне нужно организовать правильные FOREIGN KEYs и указать каскадное удаление. |
#3
|
||||
|
||||
"Ванные из обеех" таблиц выводить сложно.
Пример запроса на выборку данных вам дали. Что касается удаления, то есть встроенный элегантный метод и называется каскадное изменение/удаление. Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#4
|
|||
|
|||
Спасибо, а как указывается каскадное удаление?
|
#5
|
|||
|
|||
Зависит от базы, но что-то вида ON DELETE CASCADE в описании внешнего ключа.
|
#6
|
|||
|
|||
Да, чувствую цепочку вопросов можно еще долго будет продолжать! А как выглядит описание внешнего ключа?)))
|
#7
|
|||
|
|||
Что-то типа
Код:
ALTER TABLE TableName ADD FOREING KEY... Дальшн ищи описание синтаксиса в гугле... |
#8
|
|||
|
|||
Огромное спасибо за помощь!
|
#9
|
|||
|
|||
Спасибо с этим разобрался, а вообще смотри, как правильно "по нормальному" делается? Возможно я не так изначально вопрос поставил!
Что мне нужно? Мне нужно с помощью sql-запросов выводить на экран одних и тех же сотрудников но в разных разделах программы. То есть, например: Раздел 1: фамилия, имя, отчество, (какие нибудь столбцы из раздела 1). Раздел 2: фамилия, имя, отчество, (какие нибудь столбцы из раздела 2). и т.д. у меня для каждого из разделов есть по таблице. тип связи всегда будет получаться один к одному. короче если совсем просто, то фактически у меня получилась одна огромная таблица (свыше 40 столбцов) которую я разделил на несколько и связал одинаковым полем! А как вообще такие вещи делаются, а то пока не понятен смысл отдельных таблиц! |
#10
|
||||
|
||||
Ну 40 столбцов это еще не огромная таблица, но уже напрягает. Я бы порекомендовал вам почитать про нормализацию в БД Попробуйте осилить.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |