Проверить правильность составление таблиц
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 шт):
Напишу несколько замечаний по вашей схеме и реализации
Вы по вашей схеме. Если вы хотите реализовать схему много ко многим по 3 таблицам то в промежуточной таблице будут идентификаторы смежных таблиц
Reader (id) -> Knyha_Vydana (id, reader_id, book_id) -> book (id)
Вы должны определиться с наймингом. Либо CamelCase (PascalCase - UpperCamelCase, Lower), SnakeCase (Upper, Lower), KebabCase.
Не мешайте языки является дурным тоном, остановитесь на одном выбранном язык: Knyha_Vydana, Reader, Otmetka_vybytii, Book. Ничего против русского языка не имею но транслитерация будет вам мешать в будущем поскольку это не русский и не английский.

