[meal database를 활용하여, 내부에 Table, column, primary key, foreign key 설정하기]
USE MEAL;
Create Table Consumer
(
CONS_NUMBER INT(11) NOT NULL,
CONS_ID VARCHAR(50) NOT NULL,
CONS_NAME VARCHAR(50) NULL,
CONS_PW VARCHAR(50) NULL,
CONS_ADDRESS VARCHAR(50) NULL,
CONS_MOBILE VARCHAR(50) NULL
);
Create table follow
(
Follow_number INT(11) not NULL,
PROD_ID VARCHAR(50) NOT NULL,
CONS_ID VARCHAR(50) NOT NULL
);
Create table menu
(
MEMU_NUMBER INT(11) NOT NULL,
MENU_NAME VARCHAR(50) NOT NULL,
PROD_ID VARCHAR(50) NOT NULL,
CONS_ID VARCHAR(50) NOT NULL,
orders_name VARCHAR(50) NOT NULL,
MENU_INTRO VARCHAR(50) NULL,
MENU_STARTING_DAY VARCHAR(50) not NULL,
MENU_ENDING_DAY VARCHAR(50) NULL,
MENU_PHOTO VARCHAR(50) NULL,
MENU_UCC VARCHAR(50) NULL,
MENU_AVAILABLE_QUAN INT(11) NULL,
MENU_ORIGIN_PLACE VARCHAR(50) NULL
);
Create table orders
(
ORDERs_NUMBER INT(11) NOT NULL,
orders_name VARCHAR(50) NOT NULL,
PROD_ID VARCHAR(50) NOT NULL,
CONS_ID VARCHAR(50) NOT NULL,
MENU_NAME VARCHAR(50) NOT NULL,
MENU_STARTING_DAY VARCHAR(50) not NULL,
ORDERs_REG_DATE DATE NULL,
ORDERs_REG_TIME TIME NULL,
ORDERs_QUAN INT(11) NULL
);
Create table producer
(
PROD_NUMBER INT(11) NOT NULL,
PROD_ID VARCHAR(50) NOT NULL,
PROD_NAME VARCHAR(50) NULL,
PROD_PW VARCHAR(50) NULL,
PROD_ADDRESS VARCHAR(50) NULL,
PROD_STORENAME VARCHAR(50) NULL,
PROD_MOBILE VARCHAR(50) NULL,
PROD_INTRO VARCHAR(50) NULL,
PROD_AVAILABLE_PLACE VARCHAR(50) NULL,
PROD_PHOTO VARCHAR(50) NULL,
PROD_REGISTRATION VARCHAR(50) NULL,
PROD_STARS INT(11) NULL,
PROD_SALES INT(11) NULL
);
Create table Review
(
REVIEW_NUMBER INT(11) NOT NULL,
REVIEW_TITLE VARCHAR(50) NOT NULL,
PROD_NUMBER INT(11) NOT NULL,
PROD_ID VARCHAR(50) NOT NULL,
CONS_NUMBER INT(11) NOT NULL,
CONS_ID VARCHAR(50) NOT NULL,
MENU_NAME VARCHAR(50) NOT NULL,
MENU_STARTING_DAY VARCHAR(50) not NULL,
REVIEW_SOURCE VARCHAR(50) NULL,
REVIEW_PHOTO VARCHAR(50) NULL,
REVIEW_STARS INT(11) NULL,
REVIEW_REPLY VARCHAR(50) NULL
);
ALTER TABLE Consumer ADD PRIMARY KEY (CONS_ID);
ALTER TABLE FOLLOW ADD PRIMARY KEY (FOLLOW_NUMBER);
ALTER TABLE MENU ADD PRIMARY KEY (MENU_NAME, MENU_STARTING_DAY);
ALTER TABLE ORDERS ADD PRIMARY KEY (ORDERS_name);
ALTER TABLE PRODUCER ADD PRIMARY KEY (PROD_ID);
ALTER TABLE REVIEW ADD PRIMARY KEY (REVIEW_NUMBER, REVIEW_TITLE);
ALTER TABLE MENU ADD CONSTRAINT FK_MENU_CONSUMER FOREIGN KEY (CONS_ID) REFERENCES CONSUMER (CONS_ID);
ALTER TABLE MENU ADD CONSTRAINT FK_MENU_PRODUCER FOREIGN KEY (PROD_ID) REFERENCES PRODUCER (PROD_ID);
ALTER TABLE MENU ADD CONSTRAINT FK_MENU_ORDERs FOREIGN KEY (ORDERs_name) REFERENCES ORDERs (ORDERs_name);
ALTER TABLE REVIEW ADD CONSTRAINT FK_REVIEW_CONSUMER FOREIGN KEY (CONS_ID) REFERENCES CONSUMER (CONS_ID);
ALTER TABLE REVIEW ADD CONSTRAINT FK_REVIEW_PRODUCER FOREIGN KEY (PROD_ID) REFERENCES PRODUCER (PROD_ID);
ALTER TABLE REVIEW ADD CONSTRAINT FK_REVIEW_MENU FOREIGN KEY (MENU_NAME, MENU_STARTING_DAY) REFERENCES MENU (MENU_NAME, MENU_STARTING_DAY);
ALTER TABLE ORDERS ADD CONSTRAINT FK_ORDERS_CONSUMER FOREIGN KEY (CONS_ID) REFERENCES CONSUMER (CONS_ID);
ALTER TABLE ORDERS ADD CONSTRAINT FK_ORDERS_PRODUCER FOREIGN KEY (PROD_ID) REFERENCES PRODUCER (PROD_ID);
ALTER TABLE ORDERS ADD CONSTRAINT FK_ORDERS_MENU FOREIGN KEY (MENU_NAME, MENU_STARTING_DAY) REFERENCES MENU (MENU_NAME, MENU_STARTING_DAY);
ALTER TABLE FOLLOW ADD CONSTRAINT FK_FOLLOW_CONSUMER FOREIGN KEY (CONS_ID) REFERENCES CONSUMER (CONS_ID);
ALTER TABLE FOLLOW ADD CONSTRAINT FK_FOLLOW_PRODUCER FOREIGN KEY (PROD_ID) REFERENCES PRODUCER (PROD_ID);