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、查询后结果