Проверить правильность составление таблиц

введите сюда описание изображения

введите сюда описание изображения

CREATE TABLE [Reader] (
    Kod_Readera int NOT NULL,
    FIO varchar(255) NOT NULL,
    Adress varchar(255) NOT NULL,
    Phone int NOT NULL,
    Number_Bileta int NOT NULL,
    Otmetka_vybytii varchar(255) NOT NULL,
  CONSTRAINT [PK_READER] PRIMARY KEY CLUSTERED
  (
  [Kod_Readera] ASC
  ) WITH (IGNORE_DUP_KEY = OFF)

)
GO
CREATE TABLE [Book] (
    Kod_knigi int NOT NULL,
    Rik_Vydannya date NOT NULL,
    Nazva varchar(255) NOT NULL,
    Avtor varchar(255) NOT NULL,
    Kilkist_ekzemplyariv int NOT NULL,
    Tsina int NOT NULL,
  CONSTRAINT [PK_BOOK] PRIMARY KEY CLUSTERED
  (
  [Kod_knigi] ASC
  ) WITH (IGNORE_DUP_KEY = OFF)

)
GO
CREATE TABLE [Knyha_Vydana] (
    kod_vydachi int NOT NULL,
    Data_vydachi date NOT NULL,
    Realna_Data_povernennya date NOT NULL,
    Planova_data_povernennya date NOT NULL,
  CONSTRAINT [PK_KNYHA_VYDANA] PRIMARY KEY CLUSTERED
  (
  [kod_vydachi] ASC
  ) WITH (IGNORE_DUP_KEY = OFF)

)
GO
ALTER TABLE [Reader] WITH CHECK ADD CONSTRAINT [Reader_fk0] FOREIGN KEY ([Kod_Readera]) REFERENCES [Knyha_Vydana]([kod_vydachi])
ON UPDATE CASCADE
GO
ALTER TABLE [Reader] CHECK CONSTRAINT [Reader_fk0]
GO

ALTER TABLE [Book] WITH CHECK ADD CONSTRAINT [Book_fk0] FOREIGN KEY ([Kod_knigi]) REFERENCES [Knyha_Vydana]([kod_vydachi])
ON UPDATE CASCADE
GO
ALTER TABLE [Book] CHECK CONSTRAINT [Book_fk0]
GO

Просто проверьте, правильно ли я написал код по первой схеме


Ответы (1 шт):

Автор решения: Aziz Umarov

Напишу несколько замечаний по вашей схеме и реализации

  1. Вы по вашей схеме. Если вы хотите реализовать схему много ко многим по 3 таблицам то в промежуточной таблице будут идентификаторы смежных таблиц

    Reader (id) -> Knyha_Vydana (id, reader_id, book_id) -> book (id)

  2. Вы должны определиться с наймингом. Либо CamelCase (PascalCase - UpperCamelCase, Lower), SnakeCase (Upper, Lower), KebabCase.

  3. Не мешайте языки является дурным тоном, остановитесь на одном выбранном язык: Knyha_Vydana, Reader, Otmetka_vybytii, Book. Ничего против русского языка не имею но транслитерация будет вам мешать в будущем поскольку это не русский и не английский.

→ Ссылка