`

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

阅读更多

 

转载地址:http://blog.csdn.net/wxdzxl/article/details/8063699

 

1 判断数据库是否存在

 

  1. if exists (select * from sys.databases where name = '数据库名')   
  2. drop database [数据库名]    

 

2 判断表是否存在

 

  1. if exists (select * from sysobjects where id = object_id(N'[表名]'and OBJECTPROPERTY(id, N'IsUserTable') = 1)   
  2. drop table [表名]   

 

3 判断存储过程是否存在

 

  1. if exists (select * from sysobjects where id = object_id(N'[存储过程名]'and OBJECTPROPERTY(id, N'IsProcedure') = 1)   
  2. drop procedure [存储过程名]   

 

4 判断临时表是否存在

 

  1. if object_id('tempdb..#临时表名'is not null   
  2. drop table #临时表名   

 

5 判断视图是否存在

 

--判断是否存在'MyView52'这个试图

 

  1. IF EXISTS (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = N'MyView52')  
  2.    PRINT '存在'  
  3. else  
  4.    PRINT '不存在'  

 

6 判断函数是否存在
-- 判断要创建的函数名是否存在

 

  1. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[函数名]'and xtype in (N'FN', N'IF', N'TF'))  
  2. drop function [dbo].[函数名]   

 

7 获取用户创建的对象信息  

 

  1. SELECT [name],[id],crdate FROM sysobjects where xtype='U'  

 

/*
xtype 的表示参数类型,通常包括如下这些
C = CHECK 约束
D = 默认值或 DEFAULT 约束
F = FOREIGN KEY 约束
L = 日志
FN = 标量函数
IF = 内嵌表函数
P = 存储过程
PK = PRIMARY KEY 约束(类型是 K)
RF = 复制筛选存储过程
S = 系统表
TF = 表函数
TR = 触发器
U = 用户表
UQ = UNIQUE 约束(类型是 K)
V = 视图
X = 扩展存储过程
*/

 

8 判断列是否存在

 

  1. if exists(select * from syscolumns where id=object_id('表名'and name='列名')  
  2. alter table 表名 drop column 列名  

 

9 判断列是否自增列

 

  1. if columnproperty(object_id('table'),'col','IsIdentity')=1  
  2.    print '自增列'   
  3. else   
  4.    print '不是自增列'  
  5. SELECT * FROM sys.columns WHERE object_id=OBJECT_ID('表名'AND is_identity=1  

 

10 判断表中是否存在索引

 

  1. if exists(select * from sysindexes where id=object_id('表名'and name='索引名')  
  2.    print '存在'   
  3. else   
  4.    print '不存在'   

 

11 查看数据库中对象

 

  1. SELECT * FROM sys.sysobjects WHERE name='对象名' SELECT * FROM sys.sysobjects WHERE name='对象名' 
分享到:
评论

相关推荐

    SqlServer数据库字典--表.视图.函数.存储过程.触发器.主键.外键.约束.规则

    SqlServer数据库字典--表.视图.函数.存储过程.触发器.主键.外键.约束.规则

    Sql中判断是否存在数据库、表

    在SQL Server中,判断数据库或表是否存在是进行数据库管理和维护时常见的需求。这不仅有助于避免在不存在的对象上执行操作导致的错误,还可以用于自动化脚本中条件分支的判断,提高数据库管理的效率和安全性。以下将...

    SQL Server数据库实验指导书 实验教程 数据库实验05 视图的创建与使用.pdf

    5.掌握应用SQL Server Management Studio创建数据库的方法。 6.掌握应用SQL Server Management Studio修改和查看数据库的方法。 7.掌握应用SQL Server Management Studio删除数据库的方法。 8.掌握应用Transact-SQL...

    Delphi创建SQLserver数据库视图的例子.rar

    Delphi创建SQLserver数据库视图的例子,使用create View语句来生成视图,当然本程序创建好视图后,也可删除视图,下面是详细的代码:  //创建一个视图:  procedure TForm1.Button1Click(Sender: TObject);  ...

    mysql数据库转换成SQLserver数据库

    "mysql数据库转换成SQLserver数据库"这个主题主要涵盖以下几个关键知识点: 1. **数据迁移**:数据迁移是从一个数据库系统到另一个数据库系统的数据传输过程。在这个过程中,我们需要确保所有数据完整无损地从MySQL...

    三个SQL视图查出所有SQL Server数据库字典

    根据给定文件的信息,我们可以提炼出关于SQL Server数据库字典查询的重要知识点。下面将详细介绍如何通过三个SQL视图来查询SQL Server中的所有数据库字典。 ### SQL Server数据库字典简介 在SQL Server中,数据库...

    sqlserver数据库jar包

    SQL Server数据库是一个由微软公司开发的关系型数据库管理系统(RDBMS),它在企业级数据存储、管理和处理方面扮演着重要角色。SQL Server数据库jar包是Java开发者用来与SQL Server进行交互的重要工具,它包含了JDBC...

    java操作sqlserver 数据库实例.rar.rar

    这个压缩包文件"java操作sqlserver 数据库实例.rar.rar"很可能是包含了一系列示例代码和教程,教你如何使用Java连接并执行SQL语句在SQL Server数据库上。以下是关于这个主题的一些关键知识点: 1. **JDBC(Java ...

    SQL SERVER数据库的查询和视图.pdf

    ### SQL Server数据库的查询与视图详解 #### 一、SQL Server基础知识简介 在深入了解SQL Server数据库中的查询和视图之前,我们先简要回顾一下SQL Server的基本概念。SQL Server是由微软开发的一种关系型数据库...

    SQL Server数据库转Mysql数据库工具的一款工具

    1. **数据迁移**:它能够将SQL Server数据库中的表结构、数据、索引、视图、存储过程等完整地迁移到MySQL数据库中。这一步骤确保了目标数据库与源数据库的一致性。 2. **兼容性检查**:在迁移前,工具可能会对源...

    数据库原理与应用教程:基于SQL+Server+2005.rar

    本教程涵盖了从数据库基础到SQL Server 2005高级应用的广泛内容,适合初学者和有一定经验的数据库管理员学习,旨在帮助读者全面掌握数据库原理和SQL Server 2005的实际操作。通过学习,你将能够设计、实现、管理并...

    Sql Server数据库转Oralce数据库工具

    针对这种情况,"Sql Server数据库转Oracle数据库工具" 提供了解决方案。 1. 数据迁移的基本概念:数据迁移是指将数据从一个数据库系统迁移到另一个数据库系统的操作,通常包括数据提取、转换和加载(ETL)过程。在...

    2.sql.server.2005.数据库的基本操作 2.sql.server.2005.数据库的基本操作

    在IT领域,SQL Server 2005是一个重要的关系型数据库管理系统,由微软公司开发,广泛应用于数据存储、管理和分析。本主题将深入探讨SQL Server 2005中的数据库基本操作,帮助用户掌握如何有效地管理数据库。 1. **...

    SQL Server数据库技术大全.pdf

    《SQL Server数据库技术大全》这本书全面涵盖了SQL Server的相关知识,它是数据库管理员、开发人员和数据分析师的重要参考资料。SQL Server作为Microsoft公司的一款关系型数据库管理系统,以其高效、安全和可扩展性...

    sqlserver2008实战宝典数据库

    在描述中提到的"AdventureWorks2008R2_log.LDF"和"AdventureWorks2008R2_Data.mdf"是SQL Server数据库中的两种核心文件。`.mdf`文件是主数据文件,它包含了数据库的主要数据和元数据,而`.ldf`文件是日志文件,记录...

    数据库转换工具MySQL 转为SqlServer 脚本

    7. **性能优化**:转换后的SQL Server数据库可能需要进行一些性能优化,如调整索引、分区策略、内存配置等,以适应新的环境。 8. **安全考虑**:迁移过程中要注意权限和角色的映射,确保用户访问控制的平滑过渡。 ...

    SQLServer数据库的查询和视图.ppt

    SQL Server 数据库的查询和视图 SQL Server 数据库的查询是数据库管理系统中最基本和最重要的操作之一。查询是从数据库中提取数据的一种方式,通过使用 SELECT 语句可以从数据库中提取所需的数据。在本节中,我们将...

    SqlServer2005 打开 SqlServer2008 mdf文件

    1. 右击 Sql Server 2005 中的 jmmaj 数据库,选择“任务”->“导入数据”,然后选择数据源和目标数据,复制一个或多个表或视图数据。 2. 在选择源表和源视图的时候,点击下面的“编辑影射”按钮,然后把“启用标识...

    SqlServer表结构转oracle表结构

    在数据库管理领域,将SQL Server的表结构转换到Oracle数据库是一项常见的需求,特别是在系统迁移或数据整合的过程中。本文将详细探讨如何实现这一过程,并提供C#开发源码的相关信息。 首先,我们需要理解SQL Server...

    sqlserver数据库精简版

    "SQL Server数据库精简版"通常指的是SQL Server的简化或轻量级版本,它旨在为那些不需要完整功能集但仍然需要可靠数据库服务的小型企业或个人用户提供解决方案。这个版本可能包含了基本的数据库管理、查询和报表生成...

Global site tag (gtag.js) - Google Analytics