1. 程式人生 > >sql Server中臨時表與數據表的區別

sql Server中臨時表與數據表的區別

tzu bio 默認 omx msu oaf sum nmp dia

sql server 中臨時表與數據表的區別

1、如何判斷臨時表和數據表已生成

--如何判斷臨時表是否已創建---
if exists(select * from tempdb..sysobjects where id=object_id(tempdb..#Temp_Student))
    begin
        print 存在臨時表;
    end
else
    begin
        print 不存在臨時表;
    end
--如何判斷數據表是否已創建---
if exists(select * from sys.tables where name=
Data_Student) begin print 存在數據表; end else begin print 不存在數據表; end

其中,臨時表創建後默認在tempdb(臨時數據庫中)的sysobjects中,而數據表創建在當前數據庫的sys.tables中

2、如何創建臨時表和數據表

  當我們檢查到臨時表、數據表不存在時,一般進行創建臨時表、數據表;存在時,可進行刪除或清空數據

--1、如何判斷臨時表是否已創建---
if exists(select * from tempdb..sysobjects where
id=object_id(tempdb..#Temp_Student)) begin --print ‘存在臨時表‘; --刪除臨時表(包括表結構)-- --drop table #Temp_Student --刪除臨時表(不包括表結構)-- truncate table #Temp_Student end else begin --print ‘不存在臨時表‘; create table #Temp_Student ( Uid
int identity(1,1) primary key, Age int not null, Name varchar(20) not null, ) end --2、如何判斷數據表是否已創建--- if exists(select * from sys.tables where name=Data_Student) begin --print ‘存在數據表‘; --刪除數據表(包括表結構)-- --drop table Data_Student --刪除數據表(不包括表結構)-- truncate table Data_Student end else begin --print ‘不存在數據表‘; --不存在時,創建數據表-- create table Data_Student ( Uid int identity(1,1) primary key, Age int not null, Name varchar(20) not null, ) end

3、如何添加臨時表和數據表的數據

-----3、如何插入數據----
--1)插入數據到臨時表---
insert into #Temp_Student(Age,Name) values(21,張三),(22,李四) 
--2)插入數據到數據表---
insert into Data_Student(Age,Name) values(23,王五),(24,趙六)

4、如何查詢臨時表和數據表數據

-----4、如何查詢數據-------    
--1)查詢臨時表--
select * from #Temp_Student
--2)查詢臨時表--
select * from Data_Student

5、查詢後結果

技術分享

sql Server中臨時表與數據表的區別