Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Связи между таблицами, как настроить ? / 8 сообщений из 8, страница 1 из 1
28.03.2016, 17:24
    #39202386
bsa1977
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Связи между таблицами, как настроить ?
Создал 2 таблицы.

Задание - Таблица Места Работы содержит данные о послужном списке людей из таблицы Анкета. Я для этого добавил связь между таблицами и праймари ключи, в каждой таблице.

Вопрос правильно или нет ?

Код: 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.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
-- MySQL Workbench Forward Engineering

SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';

-- -----------------------------------------------------
-- Schema mydb
-- -----------------------------------------------------

-- -----------------------------------------------------
-- Schema mydb
-- -----------------------------------------------------
CREATE SCHEMA IF NOT EXISTS `mydb` DEFAULT CHARACTER SET utf8 ;
USE `mydb` ;

-- -----------------------------------------------------
-- Table `mydb`.`Job`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`Job` (
  `idJob` INT NOT NULL AUTO_INCREMENT,
  `dateofjoining` INT NOT NULL COMMENT 'дате поступления на работу',
  `dateofdismissal` INT NOT NULL,
  `Job` VARCHAR(100) NOT NULL COMMENT 'месте работы',
  `reasondismissal` VARCHAR(100) NOT NULL COMMENT 'причина увольнения',
  PRIMARY KEY (`idJob`))
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `mydb`.`Anketa`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`Anketa` (
  `idAnketa` INT NOT NULL AUTO_INCREMENT COMMENT 'Анкета',
  `data` INT NOT NULL COMMENT 'дата  рождения',
  `Pasportdannie` INT NOT NULL COMMENT 'паспортные данные',
  `FIO` VARCHAR(100) NOT NULL COMMENT 'ФИО',
  `personalqualities` VARCHAR(100) NOT NULL COMMENT 'личные качества и характеристики',
  `dateofentry` INT NOT NULL COMMENT 'дату занесения',
  `placeofbirth` VARCHAR(45) NOT NULL COMMENT 'место рождения\n',
  `Job_idJob` INT NOT NULL,
  PRIMARY KEY (`idAnketa`, `Job_idJob`),
  INDEX `fk_Anketa_Job_idx` (`Job_idJob` ASC),
  CONSTRAINT `fk_Anketa_Job`
    FOREIGN KEY (`Job_idJob`)
    REFERENCES `mydb`.`Job` (`idJob`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;


SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
...
Рейтинг: 0 / 0
28.03.2016, 22:23
    #39202589
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Связи между таблицами, как настроить ?
bsa1977,
нет, неправильно.
...
Рейтинг: 0 / 0
28.03.2016, 22:36
    #39202599
bsa1977
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Связи между таблицами, как настроить ?
MasterZivbsa1977,
нет, неправильно.

Подскажите пожалуйста, что не правильно ?
...
Рейтинг: 0 / 0
28.03.2016, 23:02
    #39202609
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Связи между таблицами, как настроить ?
bsa1977MasterZivbsa1977,
нет, неправильно.

Подскажите пожалуйста, что не правильно ?
Каким запросом планируете послужной список конкретного персонажа получить?
...
Рейтинг: 0 / 0
28.03.2016, 23:10
    #39202616
bsa1977
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Связи между таблицами, как настроить ?
skyANA, с помощью JOIN
...
Рейтинг: 0 / 0
28.03.2016, 23:18
    #39202620
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Связи между таблицами, как настроить ?
bsa1977skyANA, с помощью JOIN


Короче, у Вас N человек могут занимать одно Место Работы. Обычно в Анкете их перечисляют, а не указывают конкретный идентификатор.
...
Рейтинг: 0 / 0
28.03.2016, 23:21
    #39202622
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Связи между таблицами, как настроить ?
bsa1977, не работали ещё нигде что-ли? :)
...
Рейтинг: 0 / 0
29.03.2016, 07:48
    #39202695
bsa1977
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Связи между таблицами, как настроить ?
skyANAbsa1977, не работали ещё нигде что-ли? :)
Нет , не работал, только учусь. Засим и пришел на форум.
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Связи между таблицами, как настроить ? / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]