sqlserver 各种判断是否存在(表名、函数、存储过程.......)

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
简介:
 
库是否存在
if exists( select  * from  master..sysdatabases where  name =N '库名' )
print 'exists'
else
print 'not exists'
---------------
-- 判断要创建的表名是否存在
if exists ( select  * from  dbo.sysobjects where  id = object_id(N '[dbo].[表名]' ) and  OBJECTPROPERTY(id, N 'IsUserTable' ) = 1)
-- 删除表
drop  table  [dbo].[表名]
GO
---------------
-----列是否存在
  IF COL_LENGTH( '表名' , '列名' ) IS  NULL
     PRINT 'not exists'
ELSE
  PRINT 'exists'
alter  table  表名 drop  constraint  默认值名称
go
alter  table  表名 drop  column  列名
go
-----
--判断要创建临时表是否存在
If Object_Id( 'Tempdb.dbo.#Test' ) Is  Not  Null
Begin
print '存在'
End
Else
Begin
print '不存在'
End
---------------
-- 判断要创建的存储过程名是否存在
if exists ( select  * from  dbo.sysobjects where  id = object_id(N '[dbo].[存储过程名]' ) and  OBJECTPROPERTY(id, N 'IsProcedure' ) = 1)
-- 删除存储过程
drop  procedure  [dbo].[存储过程名]
GO
---------------
-- 判断要创建的视图名是否存在
if exists ( select  * from  dbo.sysobjects where  id = object_id(N '[dbo].[视图名]' ) and  OBJECTPROPERTY(id, N 'IsView' ) = 1)
-- 删除视图
drop  view  [dbo].[视图名]
GO
---------------
-- 判断要创建的函数名是否存在
if exists ( select  * from  sysobjects where  xtype= 'fn'  and  name = '函数名' )
if exists ( select  * from  dbo.sysobjects where  id = object_id(N '[dbo].[函数名]' ) and  xtype in  (N 'FN' , N 'IF' , N 'TF' ))
-- 删除函数
drop  function  [dbo].[函数名]
GO
if col_length( '表名' , '列名' ) is  null
print '不存在'
select  1 from  sysobjects where  id in  ( select  id from  syscolumns where  name = '列名' ) and  name = '表名'

  本文转自lpxxn博客园博客,原文链接:http://www.cnblogs.com/li-peng/archive/2013/01/24/2874517.html,如需转载请自行联系原作者

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
相关文章
|
1月前
|
存储 SQL Go
sqlserver存储过程
sqlserver存储过程
19 0
|
1月前
|
存储 SQL 数据库
sqlserver中常用的几个存储过程
sqlserver中常用的几个存储过程
48 0
|
2月前
|
存储 SQL 数据库
面试题20: 存储过程和函数的区别
面试题20: 存储过程和函数的区别
|
3月前
|
存储 数据库
MySQL-函数和存储过程区别
MySQL-函数和存储过程区别
46 0
|
2月前
|
存储 SQL 关系型数据库
MySQL技能完整学习列表7、存储过程和函数——1、存储过程(Stored Procedures)的创建和执行——2、函数(Functions)的创建和使用
MySQL技能完整学习列表7、存储过程和函数——1、存储过程(Stored Procedures)的创建和执行——2、函数(Functions)的创建和使用
35 0
|
3月前
|
存储 Java 数据库
JAVAEE框架数据库技术之13_oracle 之PLSQL技术及存储过程和函数(二)
JAVAEE框架数据库技术之13_oracle 之PLSQL技术及存储过程和函数
38 0
|
1月前
|
SQL 存储 Python
Microsoft SQL Server 编写汉字转拼音函数
Microsoft SQL Server 编写汉字转拼音函数
|
1月前
|
存储 SQL 关系型数据库
Msql第四天,存储过程和函数
Msql第四天,存储过程和函数
43 0
Msql第四天,存储过程和函数
|
2月前
|
存储 数据库
【数据库】分支与循环&函数&存储过程
【数据库】分支与循环&函数&存储过程
22 1
|
2月前
|
SQL 存储
SQL Server基本函数
SQL Server基本函数