My Sql 기본문법 (1)

데이터 정의어

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;