데이터 정의어
CREATE : Schema, Domain, table, view, index를 정의하는데 사용한다.
USE SCHEMA_NAME; #사용할 스키마 입력
CREATE TABLE student(
id INT NOT NULL PRIMARY KEY, #NOT NULL은 NULL값을 허용하지 않겠다는 의미, PRIMARY KEY는 기본키를 의미한다. 중복 불가, null 불가. 주로 id에 사용
`name` VARCHAR(10) NOT NULL, # `는 mac기준 ₩키를 입력하면 됨.
student_num INT NOT NULL,
UNIQUE(`name`) #UNIQUE는 제약조건, 중복불가
);
ALTER: table의 정의를 변경하는데 사용한다. ex) table에 변수(column) 추가
USE SCHEMA_NAME;
ALTER TABLE student ADD email VARCHAR(50);
DROP: Schema, Domain, table, view, index를 삭제하는데 사용한다.
USE SCHEMA_NAME;
DROP TABLE student;
SQL문법은 우리나라 문법과 반대라고 생각하면 쉽다.
ex) AAA에 있는 bbb를 선택 ==> SELECT bbb FROM AAA
데이터 제어어(DCL)
GRANT: 테이블이나 뷰 등에대해 접근권한을 설정하는 DCL문
REVOKE: 테이블이나 뷰 등에 대해 접근권한을 해제하는 DCL문
데이터 조작어(DML)
SELECT 문: 테이블이나 뷰에서 원하는 데이터 검색시 사용
- SELECT :*이 들어갈 시 모든 컬럼 선택
- FROM : 스키마 선택
- WHERE : 조건문
- 기타 등등
INSERT 문: 테이블에 데이터 추가할 떄 사용
USE SCHEMA_NAME;
INSERT INTO practice_schema.student VALUES(00128,'Kim','univ',102);
DELETE문 : 테이블에 데이터를 삭제할때 사용
USE SCHEMA_NAME
DELETE From practice_schema.student where`name`='Kim'; #이름이 Kim인 데이터의 행을 삭제함.
UPDATE문 : 테이블이나 뷰의 데이터를 수정할 때 사용
USE SCHEMA_NAME
UPDATE student SET `name`="Home", tot_cred=14 WHERE id=1;