Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
49 / 31 / 2
Регистрация: 14.02.2013
Сообщений: 677
1

Как указать в запросе связь между строками двух таблиц?

02.01.2018, 06:41. Показов 789. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Как мне для строчки 19 указать, что номер должен браться из таблицы Supply_List, столбца SupplyID?

SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
CREATE TABLE Supply_List -- Сущность "Расходка"
(
 SupplyID INT NOT NULL IDENTITY(1,1),
 SupPARTN VARCHAR (50) NOT NULL,
 SupNAIM VARCHAR(100) NULL,
 SupNOMEN VARCHAR(15) NULL,
 SupDESC text NULL,
 SupPRICE smallmoney NULL,
 SupTYPE VARCHAR(3) NOT NULL DEFAULT('10'), -- Supply_List.SupTYPE == SupplyType_Codes.TSupCODE
 SupCODE VARCHAR(15) NULL, -- хэш ((SupTYPE) + (SupVENDOR) + (SupPARTN)) 
 SupVENDOR VARCHAR(4) NOT NULL, -- Supply_List.SupVENDOR == Vendors_Codes.VenCODE
 SupSTAT VARCHAR(3) NOT NULL DEFAULT('10') -- Supply_List.StorSTAT == SupStat_Codes.SSupCODE
);
GO
 
CREATE TABLE Storage_List_Total -- Сущность "Склад Общий"
(
 StorageID INT NOT NULL IDENTITY(1,1),
 StorSID INT NOT NULL, -- Storage_List.StorSID == Supply_List.SupplyID
 StorBALAN INT NOT NULL 
);
GO
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.01.2018, 06:41
Ответы с готовыми решениями:

Связь между двумя БД двух таблиц
Есть 1-ая БД, в ней одна таблица; в этой таблице два столбца:1)Номер_ОВ ;2)Наименование. Есть 2-ая...

Как сделать связь между двумя строками в таблице mysql
Как сделать связь между двумя строками в таблице mysql Существуют две строки в mysql id и chpu в...

Как при одним запросе обновить двух таблиц
Добрый ночь всем. Как на одном запросе обновить двух таблиц. Знаю уже что деление не получается а...

Как вывести две колонки из двух разных таблиц в одном запросе?
Как вывести две колонки из двух разных таблиц в одном запросе, при этом колонки должны выводится...

9
5395 / 4323 / 1060
Регистрация: 29.08.2013
Сообщений: 27,130
Записей в блоге: 3
02.01.2018, 07:24 2
а зачем при создании таблицы это указывать?
0
49 / 31 / 2
Регистрация: 14.02.2013
Сообщений: 677
02.01.2018, 08:13  [ТС] 3
Цитата Сообщение от qwertehok Посмотреть сообщение
а зачем при создании таблицы это указывать?
Ну не знаю, первый раз базу делаю, не знаю, как правильно сделать.
Изначально планировал в коде программы закидывать данные в нужные столбцы. Потом мне показалось, что можно сделать иначе.
Вот объясните, технически, связь между таблицами реализуется на уровне базы или на уровне, управляющего ею кода?
0
5395 / 4323 / 1060
Регистрация: 29.08.2013
Сообщений: 27,130
Записей в блоге: 3
02.01.2018, 08:32 4
я делаю кодом, мне так удобнее
но никто не запрещал делать на уровне базы указывая связи руками при создании таблиц
0
49 / 31 / 2
Регистрация: 14.02.2013
Сообщений: 677
03.01.2018, 03:20  [ТС] 5
Цитата Сообщение от qwertehok Посмотреть сообщение
но никто не запрещал делать на уровне базы указывая связи руками при создании таблиц
Вот, а как это указать?
Я знаю, что для этого потребуется указывать внешний ключ. Это в общих чертах понятно. Но как конкретно сделать, не соображу. Т.е. чтобы как в моём примере было: StorSID таблицы Storage_List_Total берётся из SupplyID таблицы Supply_List, связь в данном случае один к одному.
0
1643 / 1144 / 171
Регистрация: 23.07.2010
Сообщений: 6,794
03.01.2018, 08:44 6
благородному дону стоит изучить предложение JOIN
0
49 / 31 / 2
Регистрация: 14.02.2013
Сообщений: 677
04.01.2018, 03:46  [ТС] 7
Цитата Сообщение от pincet Посмотреть сообщение
благородному дону стоит изучить предложение JOIN
Это мы о создании представления говорим? Это-то я тоже знаю, что можно какое угодно представление создать. А вот, ну как объяснить-то, ну физически, что ли, на уровне таблиц, это делается? Вот как в ацессе - создал две таблицы, и связал поле одной с первичным ключем другой. Или в ацессе это тоже лишь имитация?
0
Модератор
4217 / 3058 / 583
Регистрация: 21.01.2011
Сообщений: 13,205
04.01.2018, 09:33 8
Цитата Сообщение от SrgKord
Вот как в ацессе - создал две таблицы, и связал поле одной с первичным ключем другой
Для начала разберись, зачем в БД создаются constraints, в частности связи PK-FK. Когда известна цель, тогда проще принимать решение, нужно это или нет.
0
1643 / 1144 / 171
Регистрация: 23.07.2010
Сообщений: 6,794
04.01.2018, 12:18 9
Цитата Сообщение от SrgKord Посмотреть сообщение
Или в ацессе это тоже лишь имитация?
ясно-понятно это нужно исключительно для составления графического представления схемы данных. (ну и не забываем про ссылочную целостность)
0
49 / 31 / 2
Регистрация: 14.02.2013
Сообщений: 677
04.01.2018, 17:55  [ТС] 10
Grossmeister, pincet, qwertehok, ладно, я всё понял, всех благодарю за разжевывание
0
04.01.2018, 17:55
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.01.2018, 17:55
Помогаю со студенческими работами здесь

Связь между строками
Есть большая база данных, выглядит примерно так Id | Имя | Id | Лимит | Дата 1 ...

Как настроить связь между столбцами в двух файлах
Доброго времени суток! Вопрос такой: Есть прайс CSV выгруженный из интернет-магазина, и есть...

Как создать ассоциативную связь между элементами двух наборов данных?
Всем привет решил создать игру танчики, и застрял на одном моменте. У меня есть массив который...

Связь двух таблиц
Доброго времени суток. Столкнулся с такой проблемой. Есть 2 таблицы: одна называется Заказ, вторая...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru