본문 바로가기
IT/MSSQL

MSSQL 데이터베이스(Database) 테이블 생성 및 수정 SQL학습 #2

by 베베야 2020. 10. 16.
728x90

데이터베이스 테이블 생성,삭제 변경 및 제약조건 에 대해서 알아보도록 합시다


1 BEBE 데이터베이스 만들기
테이블을 생성하기위해 테이블을 담을 데이터베이스를 생성합니다
SQL> USE master
SQL> CREATE DATABASE BEBE

생성된 데이터베이스를 확인합니다
SQL> sp_helpdb BEBE


2 직원정보 테이블 만들기
테이블 생성시 각 컬럼에 제약조건을 설정하여 생성이 가능 합니다

[제약조건(Constraint) 종류]
NOT NULL : Null값 포함할수 없음
UNIQUE : 중복되는 값 오면 안됨 (NULL 허용)
primary key : 그 사람만이 가지고 있는 고유 값 (NOT NULL + UNIQUE)
Foreign key : 해당 칼럼 값은 참조되는 테이블의 칼럼 값 중 하나와 일치하거나 Null을 가짐
CHECK : 해당 칼럼에 저장 가능한 데이터 값의 범위나 조건 지정


[테이블 생성]
위의 설정을 참조하여 필요한 제약조건을 넣고 테이블을 생성합니다
SQL> 
CREATE TABLE dbo.직원정보 (
    사원번호 char(20) primary key,
    이름 nchar(20) NOT NULL,
    성별 char(20) NOT NULL,
    입사일 date NOT NULL,
    전자우편 varchar(60) NOT NULL,
부서코드 char(10) CONSTRAINT C_01 NOT NULL


[테이블 삭제]
SQL> DROP TABLE dbo.직원정보

[생성된 테이블 확인]
SQL> SELECT * FROM dbo.직원정보



3 테이블 관리

[테이블 조회]
SQL> SELECT * FROM dbo.직원정보

[열 추가]
SQL> ALTER TABLE dbo.직원정보 ADD 급여 int NULL
SQL> ALTER TABLE dbo.직원정보 ADD EngName varchar(20) DEFAULT('') NOT NULL

[열 삭제]
SQL> ALTER TABLE dbo.직원정보 DROP COLUMN 급여;

[열 변경]
SQL> ALTER TABLE dbo.직원정보 ALTER COLUMN 이름 nvarchar(30) NOT NULL

[열 이름 변경]
주의: 개체 이름 부분을 변경하면 스크립트 및 저장 프로시저를 손상시킬 수 있습니다.
SQL> EXEC sp_rename 'dbo.직원정보.전자우편', '이메일',  'COLUMN'

[테이블 이름 변경]
주의: 개체 이름 부분을 변경하면 스크립트 및 저장 프로시저를 손상시킬 수 있습니다.
SQL> EXEC sp_rename 'dbo.직원정보', '직원정보테이블', 'OBJECT'

 

반응형
그리드형

댓글