Мне было дано задание нормализовать заказ на продажу, создать реляционную схему и ввести данные в SQL-разработчик.
Я нормализовался до 3NF и получил это:
Клиент (Customer_ID, Customer_name) ... Первичный ключ = Customer_ID
Сотрудник (Employee_ID, Employee_name) ... Первичный ключ = Employee_ID
Sales_Order (Sales_order_ID, Employee_ID, Customer_ID, Sale_date, Order_total) ... Первичный ключ = Sales_order_ID ... Внешние ключи = Employee_ID, Customer_ID
Order_Line (Sales_order_ID, Product_ID, Количество, Line_total) ... Составной ключ = Sales_order_ID ... Внешний ключ = Product_ID
Product (Product_ID, Product_name, Product_price, Product_colour) ... Первичный ключ = Product_ID
Затем я ввел таблицы, это мой SQL:
CREATE TABLE EMPLOYEE(
Employee_ID CHAR(3),
Employee_name CHAR(20),
CONSTRAINT pk_Employee PRIMARY KEY (Employee_name)
);
CREATE TABLE CUSTOMER(
Customer_ID CHAR(5),
Customer_Name CHAR(20),
CONSTRAINT pk_Customer PRIMARY KEY (Customer_ID)
);
CREATE TABLE PRODUCT(
Product_ID CHAR(5),
Product_Name CHAR(30),
Product_Colour CHAR(10),
Product_Price CHAR(5),
CONSTRAINT pk_Product PRIMARY KEY (Product_ID)
);
CREATE TABLE SALES_ORDER(
Sales_order_ID CHAR(6),
Employee_ID CHAR(3),
Customer_ID CHAR(5),
Sale_Date CHAR(10),
Order_total CHAR(7),
CONSTRAINT pk_Order PRIMARY KEY (Sales_order_ID),
CONSTRAINT fk_Order FOREIGN KEY (Employee_ID) REFERENCES EMPLOYEE (Employee_ID),
FOREIGN KEY (Customer_ID) REFERENCES CUSTOMER (Customer_ID)
);
CREATE TABLE ORDER_LINE(
Sales_order_ID CHAR(6),
Product_ID CHAR(5),
Quantity CHAR(3),
Line_total CHAR(5),
CONSTRAINT pk_Order_Line PRIMARY KEY (Sales_order_ID),
FOREIGN KEY (Product_ID) REFERENCES PRODUCT (Product_ID)
);
IЯ могу ввести таблицы Employee
, Customer
, Product
, Sales_order
, но не могу ввести Order_line
Мне сказали, что таблица или представление не существует!
Чтоs это значит?
Правильно ли я нормализовался?
Неправильно ли я спроектировал реляционную схему?
Любая помощь будет высоко оценена