CREATE / DROP DB
https://www.w3schools.com/sql/sql_create_db.asp
를 통해 데이터 베이스 생성이 가능하다.
https://www.w3schools.com/sql/sql_drop_db.asp
를 통해 존재하는 DB를 삭제(Drop) 가능하다.
CREATE / DROP / ALTER TABLE
https://www.w3schools.com/sql/sql_create_table.asp
데이터 베이스를 생성했다면 테이블을 생성해야한다.
CREATE TABLE는 다음과 같이 사용한다.
Persons 테이블을 만드는데 PersonID는 int형, 나머지는 char형으로 구성되어있다.
위의 테이블을 생성했으면 데이터 추가를 해야한다.
혹은
두개를 이용해서 데이터를 추가해보고 비교해보자.
이미 존재하는 테이블에서 새로운 테이블을 생성하며 값을 가져오고 싶을 때는 다음과 같이 이용한다.
https://www.w3schools.com/sql/sql_drop_table.asp
테이블을 DROP 시키기 위해서는 다음과 같이 사용한다.
를 해보자.
테이블은 살려두되 테이블 내부 레코드는 모두 삭제하기 위해서는 아래와 같이 TRUNCATE를 사용한다,.
https://www.w3schools.com/sql/sql_alter.asp
테이블 상태 변경을 위해서는 ALTER TABLE을 사용한다.
테이블에 새로운 열을 추가하기 위해서는 ADD를 이용하면 된다.
를 해보자
테이블에 열을 삭제하기 위해서는 DROP를 사용하면 된다.
데이터 타입을 변경시키기 위해서는 ALTER 혹은 MODIFY를 프로그램에 맞게 이용하면 된다.
CONSTRAINTS
https://www.w3schools.com/sql/sql_constraints.asp
constraints는 CREATE TABLE 구문 혹은 ALTER TABLE에서 사용 가능한데 잘못된 형식의 데이터 삽입 혹은 삭제가 일어날 때 액션을 금지시킨다.
아래에는 constraint가 어떻게 쓰이는지 알려주고 있다.
The following constraints are commonly used in SQL:
NOT NULL - Ensures that a column cannot have a NULL value
UNIQUE - Ensures that all values in a column are different
PRIMARY KEY - A combination of a NOT NULL and UNIQUE. Uniquely identifies each row in a table
FOREIGN KEY - Uniquely identifies a row/record in another table
CHECK - Ensures that all values in a column satisfies a specific condition
DEFAULT - Sets a default value for a column when no value is specified
INDEX - Used to create and retrieve data from the database very quickly
NOT NULL Constraint
NOT NULL이 붙으면 해당하는 값에 NULL이 들어오면 금지시킨다.
테이블을 생성하고 첫번째 INSERT INTO는 제대로 들어가지만
두번째 INSERT INTO는 NULL을 허용하지 않기에 금지된다.
세번째 INSERT INTO는 NOT NULL constraint를 설정하지 않았기에 삽입된다.
UNIQUE Constraint
UNIQUE가 붙으면 열의 모든 값이 서로 다른지 확인하고 중복이 되지 않게 해준다.
UNIQUE와 PRIMARY KEY는 둘다 열 집합 내에서의 고유성을 보장하지만
하나의 테이블에서 UNIQUE는 여러번 쓸 수 있지만 PRIMARY KEY는 한 번만 쓸 수 있다.
여러 컬럼을 한번에 UNIQUE로 하고 UNIQUE constraint에 이름을 부여하는 방식이다.
ALTER TABLE를 이용하여 특정 필드를 UNIQUE로 바꾸기 위해서는
을 하면된다
UNIQUE Constraint를 없애기 위해서는 DROP을 쓰면된다.
'Applied > Database' 카테고리의 다른 글
데이터베이스 CHECK, DEFAULT (0) | 2018.08.24 |
---|---|
데이터베이스 키 개념, 기본키, 외래키 (0) | 2018.08.22 |
데이터베이스 SELECT INTO, INSERT INTO SELECT, ISNULL, PROCEDURES (0) | 2018.08.18 |
데이터베이스 UNION, GROUP BY, HAVING, EXISTS, ANY, ALL (0) | 2018.08.16 |
데이터베이스 JOIN ( INNER, LEFT, RIGHT, FULL, SELF ) (0) | 2018.08.14 |