반응형
MSSQL 도 다른 RDBMS와 마찬가지로 테이블이나 프로시저와 같은 개체들을
CREATE(생성) , ALTER(수정), DROP(삭제) 할 수 있다.
1. CREATE
-- 테이블 의 경우
-- 형식
CREATE TABLE (소유자).테이블명
(
컬럼명 타입(크기) identity(시작시퀀스,증가시퀀스) -- 자동시퀀스 지정
, 컬럼명 타입(크기) null허용유무
, 컬럼명 타입 DEFAULT(값) -- 초기값 지정
)
ALTER TALBE (소유자).테이블명 PK명 PRIMARY KEY (PK로 지정할 열 이름) -- PK 값 지정
--EX)
CREATE TABLE dbo.TESTTBL
(
seq bigint identity(1,1) -- 자동증가 시퀀스 열
, name nvarchar(5) not null
, age int not null
, city nvarchar(20) not null
, reg_dt datetime not null
CONSTRAINT DF__TESTTBL__REG_DT DEFAULT getdate() -- 기본값 할당
)
ALTER TABLE dbo.TESTTBL ADD CONSTRAINT PK__TESTTBL__SEQ PRIMARY KEY (seq) -- PK 지정
-- STORERED PROCEDURE 의 경우
--형식
CREATE PROC (소유자).프로시저이름
@매개변수1 데이터타입(크기)
, @매개변수2 데이터타입(크기)
.
.
as
begin
--수행할 로직
end
--EX)
CREATE PROC dbo.sh_test_proc
@name nvarchar(5)
, @city nvarchar(10)
as
begin
SELECT * FROM dbo.TEST_TBL WITH(NOLOCK)
WHERE name = @name
AND city = @city
end
2. ALTER
-- TABLE 의 경우
1) 컬럼 추가
-- 형식
ALTER TABLE (소유자).테이블명 ADD 컬럼명 컬럼속성
-- EX)
ALTER TABLE dbo.TESTTBL ADD cash money
2) 컬럼 속성 변경
-- 형식
ALTER TABLE (소유자).테이블명 ALTER 컬럼명 컬럼속성
-- EX)
ALTER TABLE dbo.TESTTBL ALTER cash int
3) 컬럼 삭제
-- 형식
ALTER TABLE (소유자).테이블명 DROP 컬럼명
-- EX)
ALTER TABLE dbo.TESTTBL DROP cash
-- STORERED PROCEDURE 의 경우 => 자체 수정이라고 생각하면된다.
--형식
ALTER PROC (소유자).프로시저이름
@매개변수1 데이터타입(크기)
, @매개변수2 데이터타입(크기)
.
.
as
begin
--수행할 로직
end
--EX)
ALTER PROC dbo.sh_test_proc
@name nvarchar(5)
, @city nvarchar(10)
as
begin
SELECT * FROM dbo.TEST_TBL WITH(NOLOCK)
WHERE name = @name
AND city = @city
end
3. DROP
-- TABLE 의 경우
-- 형식
DROP TABLE (소유자).테이블명
-- EX)
DROP TABLE dbo.TESTTBL
-- STORERED PROCEDURE 의 경우
--형식
DROP PROC (소유자).프로시저이름
--EX)
DROP PROC dbo.sh_test_proc
반응형
'SQL Basic' 카테고리의 다른 글
[MSSQL] partition by (0) | 2022.07.06 |
---|---|
[MSSQL] window 함수 (0) | 2022.07.05 |
[MSSQL] OUTER JOIN (0) | 2022.05.14 |
[MSSQL] INNER JOIN (0) | 2022.05.13 |
[MSSQL] CROSS JOIN (0) | 2022.05.12 |