이번 시간에는 테이블을 생성하고 변경(컬럼 추가, 컬럼 수정, 컬럼 삭제, 컬럼 이름 변경, 테이블 이름 변경)하는 방법을 알아보겠다.
테이블 생성하기
CREATE TABLE 문으로 테이블을 생성하는 방법이다.
USE TESTDB;
CREATE TABLE dbo.person(
BusinessEntityID bigint NOT NULL,
PersonType varchar(2) NOT NULL,
FirstName varchar(50) NOT NULL,
MiddleName varchar(50) NULL,
LastName varchar(50) NOT NULL
) ON FG01
여기에 컬럼을 추가하며 default 제약을 추가해보자. 예를 들어서 닉네임 컬럼을 추가하면서 빈 문자를 default로 지정하면 다음과 같이 하면 된다.
컬럼 추가하기
ALTER TABLE dbo.person
ADD NickName varchar(50) DEFAULT('') NOT NULL
GO
그리고 IDENTITY 속성도 지정해보자. 예를 들어서 seq 컬럼을 추가하면서 IDENTITY를 주는데 이는 오라클의 시퀀스랑 비슷한 개념이며 IDENTITY(1,1)은 1부터 시작하여 1씩 증가시킨다는 이야기이다.
ALTER TABLE dbo.person
ADD seq bigint IDENTITY(1,1) NOT NULL
GO
컬럼 삭제하기
예를 들어서 닉네임 컬럼을 삭제하는 방법은 다음과 같다.
ALTER TABLE dbo.person DROP COLUMN NickName
GO
컬럼 수정하기
예를 들어서 MiddleName 컬럼을 의 타입을 varchar(150)에 nullable로 바꾸는 방법은 다음과 같다.
ALTER TABLE dbo.person ALTER COLUMN MiddleName varchar(150) null
GO
컬럼 이름 수정하기
예를 들어서 MiddleName 컬럼을 TestName으로 이름을 변경하는 방법은 다음과 같다.
EXEC sp_rename 'dbo.person.MiddleName', 'TestName', 'COLUMN'
테이블 이름 수정하기
예를 들어서 person 테이블을 student로 이름을 변경하는 방법은 다음과 같다.
EXEC sp_rename 'dbo.person', 'student', 'OBJECT'
물론 테이블을 변경할 때 (삭제나 스키마 변경)은 종속성이 없어야한다. 다른곳에서 참조하고 있는데 바꿀수는 없다.
테이블 삭제
student 테이블을 삭제하는 방법은 다음과 같다.
DROP TABLE person
'Programming > SQL' 카테고리의 다른 글
ROW_NUMBER() 사용 방법 - 순위를 매겨보자 (0) | 2018.05.18 |
---|---|
데이터 정규화 (제 1차~5차 정규화) (0) | 2018.04.24 |
CREATE DATABASE 데이터베이스 생성하기 (0) | 2018.04.22 |
SELECT 문 작동 순서 (0) | 2018.04.15 |
[SELECT] 데이터 조회 (0) | 2018.04.15 |