-- DDL(데이터 정의어)
1. 다음과 같은 속성을 가진 NewBook 테이블을 생성하시오. 도서번호를 기본키로 한다. bookname과 publisher는 NULL값을 가질 수 없고, price 값은 입력되지 않으면 기본 값 10000을 지정한다.
bookid(도서번호) - INT
bookname(도서이름) - VARCHAR(20)
publisher(출판사) - VARCHAR(20)
price(가격) - INT
CREATE TABLE NewBook(bookid INT, bookname VARCHAR(20) NOT NULL, publisher VARCHAR(20) NOT NULL , price INT DEFAULT 10000 , PRIMARY KEY(bookid));
2. 다음과 같은 속성을 가진 NewCustomer테이블을 생성하시오
custid(고객번호) - INT, 기본키
name(이름) - VARCHAR(20)
address(주소) - VARCHAR(40)
phone(전화번호) - VARCHAR(20)
CREATE TABLE NewCustomer(custid INT, name VARCHAR(20), address VARCHAR(40), phone VARCHAR(20), PRIMARY KEY(custid));
3. 다음과 같은 속성을 가진 NewOrders 테이블을 생성하시오
orderid(주문번호) - INT, 기본키
custid(고객번호) - INT, NOT NULL, 외래키(NewCustomer.custid)
bookid(도서번호) - INT, NOT NULL
saleprice(판매가격) - INT
orderdate(판매일자) - DATE
CREATE TABLE NewOrders(orderid INT, custid int NOT NULL, bookid INT NOT NULL, saleprice INT, orderdate DATE, PRIMARY KEY(orderid), FOREIGN KEY(custid) REFERENCES newCustomer(custid) ON DELETE CASCADE);
4. NewBook 테이블에 VARCHAR(10)의 자료형을 갖는 isbn 속성을 추가하시오.
ALTER TABLE NewBook ADD isbn VARCHAR(10);
5. NewBook 테이블의 isbn 속성의 데이터 타입을 int형으로 변경하시오
ALTER TABLE NewBook ALTER COLUMN isbn INT;
6. NewBook 테이블의 isbn 속성을 제거하시오.
ALTER TABLE NewBook DROP COLUMN isbn;
7. NewBook 테이블의 bookid 속성에 NOT NULL제약조건을 적용하시오.
ALTER TABLE NewBook ALTER COLUMN bookid INT NOT NULL;
8. NewBook 테이블의 bookid 속성의 기본키 설정을 제거하시오
ALTER TABLE NewBook DROP PRIMARY KEY;
9. NewBook 테이블의 bookid 속성을 기본키로 변경하시오.
ALTER TABLE NewBook ADD PRIMARY KEY (bookid);
10. NewBook 테이블을 삭제하시오.
DROP TABLE newbook;
11. NewCustomer 테이블을 삭제하시오. 만약 삭제가 거절된다면 원인을 파악하고 관련된 테이블을 같이 삭제하시오.
drop table neworders;
drop table newcustomer;
-- DML(데이터 조작어)
1. Book 테이블에 새로운 도서 ‘sports'을 삽입하시오. hansol 출판사에서 출간했으며 가격은 9000원 이다.
insert into Book(bookid, bookname, publisher, price) values (11, 'sports', 'hansol', 9000);
2. 수입도서 목록(Imported_book)을 Book 테이블에 모두 삽입하시오.
INSERT INTO Book(bookid, bookname, price, publisher) (SELECT bookid, bookname, price, publisher FROM Imported_book);
3. Customer 테이블에서 고객번호가 5인 고객의 주소를 busan으로 변경하시오.
UPDATE Customer SET address='busan' WHERE custid=5;
4. Customer 테이블에서 고객번호가 5인 고객을 삭제하시오.
DELETE FROM Customer WHERE custid=5;
5. 테이블은 남기고 모든 고객정보를 삭제하시오.
DELETE FROM Customer;
'DB > MY-SQL' 카테고리의 다른 글
DB (0) | 2021.05.31 |
---|---|
MYSQL 테이블과 도식화 (0) | 2021.05.27 |
MYSQL - DDL, DML? (0) | 2021.05.26 |
MYSQL 많이 사용하는 함수 (0) | 2021.05.26 |
MYSQL - Select문, 서브쿼리 기본 예제 (0) | 2021.05.25 |
댓글