Sql Server 判断表是否存在方法总结

#使用场景:

1、在创建表之前,需要先判断该表是否已经存在;

2、在删除表之前,需要先判断该表是否已经存在;

#方法总结:

1、判断实体表是否存在的方法:

1)、方法一:

if Exists(select top 1 * from sysObjects where Id=OBJECT_ID(N‘UserInfos‘) and xtype=‘U‘)
    print ‘表UserInfos 存在‘
else
    print ‘表UserInfos 不存在‘

2)、方法二:

if OBJECT_ID(N‘UserInfos‘,N‘U‘) is not null
    print ‘表UserInfos 存在!‘
else
    print ‘表UserInfos 不存在!‘

2、判断临时表是否存在的方法:

1)、方法一:

if exists (select * from tempdb.dbo.sysobjects where id = object_id(N‘tempdb..#TempUsers‘) and type=‘U‘)
    print ‘临时表#TempUsers 存在!‘
else
    print ‘临时表#TempUsers 不存在!‘

2)、方法二:

if OBJECT_ID(N‘tempdb..#TempUsers‘,N‘U‘) is not null
    print ‘临时表#TempUsers 存在!‘
else
    print ‘临时表#TempUsers 不存在!‘

————————————————————————————————————

原文地址:https://www.cnblogs.com/willingtolove/p/11122386.html

时间: 2024-11-06 03:42:17

Sql Server 判断表是否存在方法总结的相关文章

Sql Server 判断表是否存在方法

在创建表之前,通常需要先判断该表是否已经存在,如果存在则不需要创建:有时候删除表之前也需要先行判断是否存在,否则会报错. 判断方法大致有以下两种: 方法一: if Exists(select top 1 1 from sysObjects where Id=OBJECT_ID(N'LE_User') and xtype='U') print '存在' else print '不存在' 方法二: if OBJECT_ID(N'LE_User',N'U') is not null print '存在

SQL Server 判断表中是否存在某字段

原文:SQL Server 判断表中是否存在某字段 功能:判断表中是否存在某字段,若不存在,则新增该字段 语句: IF NOT EXIST (SELECT 1 FROM [DATABASE].SYS.SYSCOLUMNS WHERE ID=OBJECT_ID([DATABASE].[SCHEMA].[TABLENAME]) AND NAME='COLUMN_NAME') ALTER TABLE [TABLENAME] ADD [COLUMN_NAME] [COLUMN_TYPE] p.s. 之前

sql server判断表存在

在创建表.更改表结构.删除表或对表进行什么操作之前,一个比较严谨的做法是先判断该表是否已经存在. 在SQL Server中判断一个表是否存在,有两个方法,下面以diso表为例. 方法1 if exists(select top 1 1 from sysObjects where id = object_id(N'diso') and xtype = 'U') print '表diso存在' else print '表diso不存在' 原理是查询[sysObjects]这张系统表,该表保存了所有对

SQL Server 判断表名称、索引是否存在

1.判断索引是否存在 ps:@tableName 表名称, @indexName 索引名 IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id=OBJECT_ID(@tableName, N'U') and [email protected])BEGIN DROP INDEX @indexName ON @tableNameEND 2.判断表名称是否存在 ps:后期更新 原文地址:https://www.cnblogs.com/xy0710/p

sql server 判断是否存在数据库,表,列,视图

1 判断数据库是否存在if exists (select * from sys.databases where name = '数据库名')    drop database [数据库名] 2 判断表是否存在if exists (select * from sysobjects where id = object_id(N'[表名]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)    drop table [表名] 3 判断存储过程是否存在if ex

SQL SERVER 判断是否存在并删除某个数据库、表、视图、触发器、储存过程、函数

-- SQL SERVER 判断是否存在某个触发器.储存过程 -- 判断储存过程,如果存在则删除IF (EXISTS(SELECT * FROM sysobjects WHERE name='procedurename' AND type='P')) DROP PROCEDURE procedurename -- 判断触发器,如果存在则删除IF (EXISTS(SELECT * FROM sysobjects WHERE id=object_id(N'[dbo].[triggername]')

SQL SERVER 判断是否存在数据库、表、列、视图

SQL SERVER 判断是否存在数据库.表.列.视图 --1. 判断数据库是否存在 IF EXISTS (SELECT * FROM SYS.DATABASES WHERE NAME = '数据库名') DROP DATABASE [数据库名] --2. 判断表是否存在 IF EXISTS (SELECT * FROM SYSOBJECTS WHERE ID = OBJECT_ID(N'[表名]') AND OBJECTPROPERTY(ID, N'ISUSERTABLE') = 1) PRI

修改SQL Server数据库表的创建时间最简单最直接有效的方法

说明:这篇文章是几年前我发布在网易博客当中的原创文章,但由于网易博客现在要停止运营了,所以我就把这篇文章搬了过来,因为这种操作方式是通用的,即使是对现在最新的SQL Server数据库里面的操作也是一样的,相信很多朋友都会使用到. ----------------------分割线-------------------- 网络上曾经有很多人询问怎么修改SQL Server数据库表的创建时间,但得到的回答多种多样,有的说需要使用某些软件进行修改,有的说需要修改注册表等等,其实这些方法实施起来不但麻

SQL Server删除表信息的三种方法

1.使用DELETE实现SQL Server删除表信息 (1)删除表中的全部信息 USE student GO DELETE student      --不加where条件,删除表中的所有记录 go (2)删除表中符合条件的记录 USE student GO DELETE student where Id='001'    --删除表中符合条件的记录 GO 2.使用TRUNCATE删除表中的信息 USE student GO TRUNCATE TABLE    student   --删除表中