FOREIGN KEY - MySQL (220365)

Узнай цену своей работы

Формулировка задачи:

Здравствуйте. Нужно что бы fileref в таблице distribute был привязан к ref в таблице files. Чет не получается. Впервые пытаюсь сделать привязку. Что делаю не так? Ничего что у них текстовый тип?
CREATE DATABASE family;
USE family;
CREATE TABLE `files` (
  `name` text,
  `ref` text,
  PRIMARY KEY(REF),
  FOREIGN KEY (fileref) REFERENCES distribute(fileref);
);
CREATE TABLE `distribute` (
  fileref text FOREIGN KEY REFERENCES files(REF),
  task text,
  member text,
  STATUS INT
);

Решение задачи: «FOREIGN KEY»

textual
Листинг программы
CREATE DATABASE family;
USE family;
CREATE TABLE `files` (
    `ref` text,
    `name` text,
    PRIMARY KEY (`ref`(200))
);
CREATE TABLE `distribute` (
  `fileref` text REFERENCES `files` (`ref`),
  `task` text,
  `member` text,
  `status` INT
);
CREATE TABLE `users` (
  `login` text,
  `password` text,
  `category` text
);

Объяснение кода листинга программы

  1. Создание базы данных family.
  2. Выбор базы данных family.
  3. Создание таблицы files с полями ref и name.
  4. Установка первичного ключа для таблицы files с использованием поля ref и ограничением длины в 200 символов.
  5. Создание таблицы distribute с полями fileref, task, member и status.
  6. Установка внешнего ключа для поля fileref в таблице distribute, который ссылается на поле ref в таблице files.
  7. Создание таблицы users с полями login, password и category.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.1 из 5