SQL Server에서 테이블은 모두 네 가지로 나눌 수 있다.
영구 테이블, 로컬 임시 테이블, 전역 임시 테이블, 테이블 변수로 나눌 수 있다.
영구 테이블 : 일반적인 테이블로 데이터베이스가 다시 시작되어도 항상 존재하는 테이블
로컬 임시 테이블 : 테이블 명 앞에 '#'을 붙인다. 사용자 세션 동안만 유지되고 tempdb에 생성된다.
전역 임시 테이블 : 테이블 명 앞에 '##'을 붙인다. 전체 사용자 세션에서 유지되고 tempdb에 생성된다.
테이블 변수 : 배치 동안에만 동작하며, 배치가 끝나면 테이블 변수는 사라진다.
임시 테이블은 생성 후 tempdb..Sysobjects를 검색하면 tempdb에 해당 테이블들이 생성되어 있는 것을
확인할 수 있다.
USE TestDB
GO
CREATE TABLE #LOCAL_TBL (ID INT) GO
CREATE TABLE ##GLOBAL_TBL (ID INT) GO
SELECT NAME FROM tempdb..Sysobjects WHERE NAME LIKE '#%' GO
|
개체 탐색기에서 tempdb에서도 생성된 임시 테이블을 확인할 수 있다.
'DBMS > SQL Server' 카테고리의 다른 글
[SQL Server] MDF, LDF 파일을 이용한 데이터베이스 복구 (0) | 2013.12.19 |
---|---|
[SQL Server] COUNT(*) vs COUNT(컬럼) (0) | 2013.10.11 |
[SQL Server] uniqueidentifier 데이터 형식 (0) | 2013.10.06 |
[SQL Server] char vs varchar (0) | 2013.10.06 |
[SQL Server] 스키마 변경 기록 확인하기 (0) | 2013.10.01 |