밑으로 내려가면서 순서대로 설정!
CREATE TABLE product(
prod_no VARCHAR2(5),
prod_name VARCHAR2(20)
);
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ테이블 생성ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
DROP TABLE product;
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ테이블 제거ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
ALTER TABLE product
ADD prod_price NUMBER(6);
ㅡㅡㅡㅡPRICE NUMBER 6자ㅡㅡㅡㅡ
ALTER TABLE product
MODIFY prod_price DEFAULT 0;
ㅡㅡㅡㅡprice에 가격을 넣지 않으면 0값으로 넣어진다ㅡㅡㅡㅡ
ALTER TABLE product
MODIFY prod_name VARCHAR2(100);
ㅡㅡㅡㅡname 바이트를 100바이트로 설정ㅡㅡㅡㅡ
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ테이블 조건 변경ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
INSERT INTO product(prod_no, prod_name) VALUES( 'C0001' , '아메리카노' );
INSERT INTO product(prod_no, prod_name) VALUES( 'C0002' , '라떼' );
INSERT INTO product(prod_no, prod_name) VALUES( 'C0003' , '핫초코' );
INSERT INTO product(prod_no, prod_name) VALUES( 'C0004' , '아이스딸기아사이' );
INSERT INTO product VALUES ( 'F0001' , '치즈케이크' , 1000);
INSERT INTO product VALUES ( 'F0002' , '치즈베이글' , NULL);
INSERT INTO product VALUES ( 'F0003' , '치킨샌드위치' , '');
SELECT * FROM product;
ㅡㅡㅡㅡㅡㅡㅡㅡ위 자료가 product 테이블에 들어감!ㅡㅡㅡㅡㅡㅡㅡ
INSERT INTO product VALUES ( 'F0004' , '밀박스' ); -- (X) price가 안적혀있어서
INSERT INTO product VALUES( 'C0001' , '다른상품' , 0 );
INSERT INTO product VALUES( '' , '번호없는상품1' , 0 );
INSERT INTO product VALUES( '' , '번호없는상품2' , 0 );
ㅡㅡㅡㅡㅡ빈문자열은 작은따음표 안에 아무것도 없어야한다ㅡㅡㅡㅡㅡ
DELETE product WHERE TRIM(prod_no) IS NULL; --상품번호가 NULL인애들 삭제
DELETE product WHERE prod_name = '다른상품'; --이름이 다른상품인 애들 삭제
ㅡㅡㅡ위에 제약조건을 안넣어서 prod_no 안들어간애들 삭제ㅡㅡㅡ
ALTER TABLE product
ADD CONSTRAINTS prod_no_pk PRIMARY KEY(prod_no);
ㅡㅡㅡㅡprod_no가 안들어간 애들은 추가 못하게 제약조건 설정ㅡㅡㅡㅡ
INSERT INTO product VALUES( 'C0001' , '다른상품' , 0 );
INSERT INTO product VALUES( '' , '번호없는상품1' , 0 );
INSERT INTO product VALUES( '' , '번호없는상품2' , 0 );
ㅡㅡㅡㅡㅡㅡ제약조건을 추가해서 위 3줄은 안들어가진다ㅡㅡㅡㅡㅡㅡ
INSERT INTO product(prod_no, prod_name) VALUES ( 'D0001' , '라임블렌디드');
ㅡㅡㅡprod_no 에서 price가 없으면 못들어가게 제약조건이 있어 추가안됨ㅡㅡㅡ
INSERT INTO product(prod_no, prod_name) VALUES ( 'D0002' , NULL );
ㅡㅡㅡㅡㅡㅡㅡㅡ제약조건을 안넣어서 NULL값이 들어가진다ㅡㅡㅡㅡㅡㅡㅡ
DELETE product WHERE prod_name IS NULL;
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ이름이 NULL인 애들 삭제ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
ALTER TABLE product
MODIFY prod_name CONSTRAINTS prod_name_nn NOT NULL;
INSERT INTO product(prod_no, prod_name) VALUES ( 'D0002' , NULL );
ㅡㅡㅡㅡㅡㅡㅡ이름에 NULL값이 못들어가게 제약조건 설정!ㅡㅡㅡㅡㅡㅡㅡ
DELETE product WHERE prod_name IS NULL;
ㅡㅡㅡㅡㅡㅡNULL이란 이름을 가진 데이터 삭제ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
UPDATE product SET prod_name=prod_name||'음료' , prod_price=3000 WHERE prod_no LIKE 'D%';
ㅡㅡㅡㅡㅡㅡㅡㅡㅡ기존 상품이름 뒤에 "음료"라는 문자를 대입ㅡㅡㅡㅡㅡㅡㅡㅡㅡ
SELECT * FROM product;
완성!