Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
306 / 217 / 70
Регистрация: 08.11.2010
Сообщений: 1,882
1

как связать две теблицы!

15.05.2012, 13:08. Показов 871. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
проблема такая! щас буде назначать права пользователям но для этого над много столбцов..ну ладно проблема пока не в этом!
Так как соеденить две таблица.
users и users_actions
как связать две теблицы!

я видел недайно такой же вопрос но не могу его найти! подскажите как, или Норм учебник бы на примерах!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.05.2012, 13:08
Ответы с готовыми решениями:

Как связать две формы?
Здравствуйте)У меня есть таблица Расписание автобусов, в этой таблице столбец количество свободных...

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

Как связать две таблицы?
подскажите, пожалуйста, как связать две таблицы в ms sql отношением

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

9
21 / 21 / 3
Регистрация: 24.07.2010
Сообщений: 161
15.05.2012, 13:40 2
что значит связать?
0
452 / 443 / 21
Регистрация: 11.04.2012
Сообщений: 2,076
15.05.2012, 13:47 3
Цитата Сообщение от Макc Посмотреть сообщение
Так как соеденить две таблица.
users и users_actions
SQL
1
SELECT * FROM users,users_actions WHERE users.users_actions=users_actions.id
1
306 / 217 / 70
Регистрация: 08.11.2010
Сообщений: 1,882
15.05.2012, 13:48  [ТС] 4
Цитата Сообщение от Александр1989 Посмотреть сообщение
что значит связать?
ну так

Таблица:users
id
name
usersID


Таблица:usersID
id
famil
.......
.......
.......
.......
постараюсь обьяснить! у меня основная таблица users и мне надо добавить еще столбцов 5-6 тогда она получается грамозкой вот я и хочу сделаьб вторую таблицу для этих столбцов тоесть как я понимаю Родительская и дочерняя таблица получится

SQL
1
SELECT `famil` FROM `users`
тоесть так будет работать?
0
960 / 801 / 85
Регистрация: 21.07.2010
Сообщений: 3,522
15.05.2012, 13:53 5
Цитата Сообщение от Макc Посмотреть сообщение
у меня основная таблица users
тогда надо во второй таблице создать поле, которое связано с id первой.
у вас ровно наоборот.
А связывать можно по LEFT JOIN'у
SQL
1
2
3
4
SELECT * FROM users_actions a 
   LEFT JOIN users b 
   ON b.связующее_поле = a.id 
WHERE a.id = чему_то
1
306 / 217 / 70
Регистрация: 08.11.2010
Сообщений: 1,882
15.05.2012, 14:09  [ТС] 6
вот просто две таблица
SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
--
-- Дамп данных таблицы `users`
--
[PHP]
--
-- Структура таблицы `users`
--
 
CREATE TABLE IF NOT EXISTS `users` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `famil` VARCHAR(255) NOT NULL,
  `name` VARCHAR(255) NOT NULL,
  `avatar` VARCHAR(255) NOT NULL,
  `login` VARCHAR(15) NOT NULL,
  `password` VARCHAR(15) NOT NULL,
  `date_reg` datetime DEFAULT NULL,
  `authoriz_last` datetime NOT NULL,
  `last_visit` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `email` VARCHAR(255) NOT NULL,
  `rights_site` VARCHAR(50) NOT NULL,
  `actions_site` VARCHAR(255) NOT NULL,
  `design` VARCHAR(55) NOT NULL,
  `status` VARCHAR(55) NOT NULL DEFAULT 'offline',
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=cp1251 AUTO_INCREMENT=123 ;
 
-- --------------------------------------------------------
 
--
-- Структура таблицы `users_actions`
--
 
CREATE TABLE IF NOT EXISTS `users_actions` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `soft` INT(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1 ;
 
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;[/PHP]
как я понимаю то как да я сделаю связь то в таблице users_actions должно столько же строк скок и в первой таблице!
соеденил так
как связать две теблицы!
но не катит надо как то Первичные ключи ставить.. я плохо шорю как
0
21 / 21 / 3
Регистрация: 24.07.2010
Сообщений: 161
15.05.2012, 14:23 7
Все правильно
0
960 / 801 / 85
Регистрация: 21.07.2010
Сообщений: 3,522
15.05.2012, 14:25 8
во второй таблице надо:
1. id
2. soft
3. connect_id
Вот этот connect_id и будет связан с id первой таблицы. Тока надо чтобы при сохранении в эту таблицу чего-нибудь в поле connect_id записывался id основной таблицы
1
306 / 217 / 70
Регистрация: 08.11.2010
Сообщений: 1,882
15.05.2012, 14:51  [ТС] 9
Цитата Сообщение от Love_and_Peace Посмотреть сообщение
во второй таблице надо:
1. id
2. soft
3. connect_id
Вот этот connect_id и будет связан с id первой таблицы. Тока надо чтобы при сохранении в эту таблицу чего-нибудь в поле connect_id записывался id основной таблицы
а какой Индекс указать у connect_id
Название: ii.png
Просмотров: 17

Размер: 3.4 Кб
0
960 / 801 / 85
Регистрация: 21.07.2010
Сообщений: 3,522
15.05.2012, 15:01 10
можно вабще не указывать.
У меня например тип табли InnoDB и использую индекс FOREIGN KEY.
а так, точно правда незнаю, если таблицы очень большие, можно использовать индекс INDEX, для быстрого нахождения
0
15.05.2012, 15:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.05.2012, 15:01
Помогаю со студенческими работами здесь

Как связать две таблицы?
Как связать 2 таблицы в одном LINQ to SQL запросе? никак понять не могу блин

Как связать две таблицы?
Существуют две таблицы. (1) содержит колонки: id, фамилия, должность. (2) содержит колонки: id,...

Как связать две таблицы
База состоит из двух таблиц Department --- id (int primary key) --- name (varchar) --- parent...

Как связать две таблицы
Добрый день! Помогите, пожалуйста, связать 2 таблице на главной форме. Чтобы при выборе данной из...


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

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