sql判断临时表
Ⅰ sql判断临时表是否存在
1、判断数据表是否存在
方法一:
use yourdb;
go
if object_id(N'tablename',N'U') is not null
print '存在'
else
print '不存在'
例如:
use fireweb;
goif object_id(N'TEMP_TBL',N'U') is not null
print '存在'
else
print '不存在'
方法二:
USE [实例名]
GO
IF EXISTS (SELECT * FROM dbo.SysObjects WHERE ID = object_id(N'[表名]') AND OBJECTPROPERTY(ID, 'IsTable') = 1)
PRINT '存在'
ELSE
PRINT'不存在'
例如:
use fireweb;
goIF EXISTS (SELECT * FROM dbo.SysObjects WHERE ID = object_id(N'TEMP_TBL') AND OBJECTPROPERTY(ID, 'IsTable') = 1)
PRINT '存在'
ELSE
PRINT'不存在'
2、临时表是否存在:
方法一:
use fireweb;
goif exists(select * from tempdb..sysobjects where id=object_id('tempdb..##TEMP_TBL'))
PRINT '存在'
ELSE
PRINT'不存在'
方法二:
use fireweb;
goif exists (select * from tempdb.dbo.sysobjects where id = object_id(N'tempdb..#TEMP_TBL') and type='U')
PRINT '存在'
ELSE
PRINT'不存在'
Ⅱ SQL如何把查询出来的多个表创建成一个临时表
SELECT * INTO #TEMPTABLENAME
FROM
(
SELECT xxxxxx //你的查询语句
)AS table_source //这个别名是必须的
WHERE xxxxxxxx //你需要的where判断;
COMMIT或ROLLBACK后可自动删除该临时表
1、sql server使用select into会自动生成临时表,判贺不需要事先创建。
select * into #temp from sysobjects
2、sql要把多个表合并成一个要用到union或union all的关键字。
3、union或union all的区别是:union会自动压缩多个结果集合中的大衫重复结果,而union all则将所有的结果全部显示出来。
(2)sql判断临时表扩展阅读
sql语言特点如下:
1、一体化:SQL集数据定义DDL、数据操纵DML和数据控制DCL于一体,可以完成数据库中的全部工作。
2、使用方式灵活:它具有两种使用方式,即可以直接以命令方式交互使用;也可以嵌入使用,嵌入到C、C++、FORTRAN、COBOL、JAVA等主语言中使用。
3、语言简洁,语法滚冲腔简单,好学好用:在ANSI标准中,只包含了94个英文单词,核心功能只用6个动词,语法接近英语口语。
Ⅲ sql语句 判断表是否存在
IF EXISTS(SELECT name FROM [sysobjects] WHERE name = '表名')
PRINT '该表存在'
ELSE
PRINT '该表不存在'。
Ⅳ SQL如何将这一查询结果放到临时表#TEMP中
一、首先要建临时表:CREATE TABLE #TEMP --建临时表,表中的字段的数据类型跟要插入数据的查询结果对应的字段数据类型要一致。
二、插入数据:INSERT INTO #TEMP,临时表的字段和查询中的字段对应要处理好。
另:
通常在建临时表前会判断临时表是否存在:
IF Object_id('Tempdb..#TEMP') IS NOT NULL
DROP TABLE #TEMP --如果有存在就删除临时表
还有就是用完即删:DROP TABLE #TEMP