开发者社区> 长征2号> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Sql Server中判断表或者数据库是否存在

简介:
+关注继续查看

SQL Server中判断数据库是否存在:
法(一):

    select * From master.dbo.sysdatabases where name='数据库名'

  法(二):
if db_id('数据库名') is not null

      drop database 。。。
   go

    create 。。。

 SQL Server中判断表对象是否存在:
select count(*) from sysobjects where id = object_id('数据库名.Owner.表名')

  if exists 

      (select count(*) from sysobjects where id = object_id('数据库名.Owner.表名'))
print '存在'
else
print '不存在'

SQL Server中判断表中字段是否存在:
if exists

      (select * from syscolumns where name='colname1' and id=object_id('数据库名.Owner.表名'))
print '存在'
else
print '不存在'
(代表表tablename1中存在colname1字段 )
例:
  select * from syscolumns where name='Test' and id=object_id('dbo.test')

 

SQL Server中判断存储过程或视图是否存在:

   if object_id('视图或存储过程名')  is not null
     drop proc/view 。。。
go

   create proc/view  。。。

 

  或

 

  if Exists(select * from sysobjects where name='视图或存储过程名'  AND  type  =  'P/V')
     drop proc/view  。。。
go  

  create proc/view  。。。 


本文转自贺满博客园博客,原文链接:http://www.cnblogs.com/puresoul/archive/2010/03/21/1691004.html,如需转载请自行联系原作者。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
MYSQL 批量修改表前缀与删除数据表 sql 语句
MYSQL 批量修改表前缀与删除数据表 sql 语句
0 0
SQL Server 删除数据库所有表和所有存储过程
SQL Server 删除数据库所有表和所有存储过程
0 0
SQL SERVER 被锁住的表,以及解锁。
SQL SERVER 被锁住的表,以及解锁。
0 0
mysql查询所有数据库、表、字段常用sql语句
mysql查询所有数据库、表、字段常用sql语句
0 0
动态批量新建SQL数据库中的表
动态批量新建SQL数据库中的表
0 0
动态批量删除SQL数据库中的表
动态批量删除SQL数据库中的表
0 0
SQL 语法--表特定语句--分组、排序、过滤 | 学习笔记
快速学习 SQL 语法--表特定语句--分组、排序、过滤
0 0
SQL 语法--表特定语句--alter、drop、view | 学习笔记
快速学习 SQL 语法--表特定语句--alter、drop、view
0 0
SQL 语法--表数据导入方式 | 学习笔记
快速学习 SQL语法--表数据导入方式
0 0
SQL 语法--表特定语句--create、insert、desc | 学习笔记
快速学习 SQL 语法--表特定语句--create、insert、desc
0 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
用SQL做数据分析
立即下载
阿里云流计算 Flink SQL 核心功能解密
立即下载
Comparison of Spark SQL with Hive
立即下载