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 exists (select * from sysobjects where id = object_id(N'[存储过程名]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [存储过程名]
4 判断临时表是否存在
if object_id('tempdb..#临时表名') is not null
drop table #临时表名
5 判断视图是否存在
--SQL Server 2005
IF EXISTS (SELECT * FROM sys.views WHERE object_id = '[dbo].[视图名]'
print '存在'
else
print '不存在'
6 判断函数是否存在
-- 判断要创建的函数名是否存在
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[函数名]') and xtype in (N'FN', N'IF', N'TF'))
drop function [dbo].[函数名]
7 获取用户创建的对象信息
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 判断列是否存在
if exists(select * from syscolumns where id=object_id('表名') and name='列名')
alter table 表名 drop column 列名
9 判断列是否自增列
if columnproperty(object_id('table'),'col','IsIdentity')=1
print '自增列'
else
print '不是自增列'
SELECT * FROM sys.columns WHERE object_id=OBJECT_ID('表名') AND is_identity=1
10 判断表中是否存在索引
if exists(select * from sysindexes where id=object_id('表名') and name='索引名')
print '存在'
else
print '不存在'
11 查看数据库中对象
SELECT * FROM sys.sysobjects WHERE name='对象名' SELECT * FROM sys.sysobjects WHERE name='对象名'
sql server 判断是否存在数据库,表,列,视图相关推荐
- sql server 触发器实时同步数据库表数据
sql server 触发器实时同步数据库表数据 创建两个相同结构的数据库表 CREATE TABLE [dbo].[Table_1]([id] [varchar](50) NOT NULL,[nam ...
- SQL Server中查询所有的表、视图、列和存储过程
SELECT * FROM INFORMATION_SCHEMA.TABLES SELECT * FROM INFORMATION_SCHEMA.VIEWS SELECT * FROM INFORMA ...
- SQL SERVER 解析XML到数据库表
//片段1 IF OBJECT_ID('tempdb..#TEMP') IS NOT NULL BEGIN DROP TABLE #TEMP END CREATE TABLE # ...
- SQL SERVER 判断是否存在并删除某个数据库、表、视图、触发器、储存过程、函数
– SQL SERVER 判断是否存在某个触发器.储存过程 – 判断储存过程,如果存在则删除 IF (EXISTS(SELECT * FROM sysobjects WHERE name='proce ...
- sql server基础语法 创建数据库 创建表
sql server基础语法 创建数据库 创建表 1.创建数据库 2.表的创建 3.在现有表中添加标识列 4.创建外键 5.添加外键 6.约束 7.创建局部临时表 8.创建全局临时表 9.创建具有ch ...
- Sql Server 性能分析4 –数据库大小,数据库表大小综合性分析报表输出
Sql Server 性能分析4 –数据库大小,数据库表大小综合性分析报表输出 一:MS SQL Report Server 报表的制作. 1.打开Microsoft Visual Studio 20 ...
- 在 sql server 中,查询 数据库的大小 和 数据库中各表的大小
2019独角兽企业重金招聘Python工程师标准>>> 在 sql server 中,查询 数据库的大小 和 数据库中各表的大小 其实本来只想找一个方法能查询一下 数据库 的大小,没 ...
- SQL语句判断指定的数据库、表、字段、存储过程是否存在
SQL语句判断指定的数据库.表.字段.存储过程是否存在 直接上代码,对大家有用就好! 代码 --判断[TestDB]是否存在 if exists(select 1 from master..sysda ...
- SQL Server详细使用教程(包含启动SQL server服务、建立数据库、建表的详细操作) 非常适合初学者
文章目录 目录 前言 一.启动SQL server服务的三种方法 1.不启动SQL server服务的影响 2.方法一:利用cmd启动SQL server服务 3.方法二:利用SQL Server配置 ...
最新文章
- mysql 压力测试知乎_MySQL 对于千万级的大表要怎么优化? - MySQL
- docker容器配置加速器
- python3读取txt文件数字签名_hash文件-对文件进行数字签名
- yii 使用 有赞sdk_有赞 App 动态化配置中心实践
- fckeditor漏洞_一、Ewebeidtor编辑器漏洞
- 极客大学架构师训练营 微服务架构 领域驱动设计DDD 中台架构、组件设计原则 第十次作业
- 禁用Win10驱动程序强制签名验证
- CentOS 7.6 安装 Sentaurus 2017.09 记录
- 变色龙引导安装mac
- 论文研读 —— 7. Very Deep Convolutional Networks for Large-Scale Image Recognition (3/3)
- 计算机硬盘使用率测试软件,测试硬盘速度的10款软件
- 典型的DOS攻击技术
- 艺赛旗(RPA)【服务端】修改服务器访问端口
- mysql ext3 ext4_Mysql如何选择文件系统?(ext4 vs ext3 vs jfs vs xfs vs reise
- 基于CSS盒模型的页面布局
- 通识~FIR数字滤波器设计讲解
- 软件测试之 loadrunner12.0.2 汉化教程
- 2019年高教社杯全国大学生数学建模竞赛 题目回顾及个人体会
- 星球乐园 | 对节日无感的寡淡人士,你们还猜灯谜吗?
- CTFhub命令注入,过滤了cat命令,过滤了空格,过滤目录分隔符,过滤运算符,综合练习