SQLServer决定是否存在数据库、表、列和视图。

1确定数据库是否存在

如果存在(查询sys.databases name =数据库名称)

删除数据库{数据库名称}

2判断表是否存在

If exists (select * from sysobjects where id = object_id (N'{'and table name) OBJECTPROPERTY (ID, N'IsUserTable') = 1)

删除表{表名}

3确定存储过程是否存在。

如果存在(SELECT * FROM sysobjects id是object_id(N'{客体的存储过程的名称)(ID,n'isprocedure)= 1)

删除过程{存储过程名}

4确定临时表是否存在。

如果object_id('tempdb .. #临时表名称)是无效的

表#临时表的名字

5视图是否存在

-试图判断是否有a'myview52

如果存在(选择从哪里table_name information_schema.views table_name = n'myview52)

打印'存在'

其他的

打印否

6判断函数是否存在有一个函数

-确定要创建的函数名是否存在

如果存在(SELECT * FROM dbo.sysobjects id是object_id(N'{ DBO }。{和X型的函数名称)(n'fn ',n'if ',n'tf '))

{ } { DBO滴功能函数名称}。

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

选择{姓名},{我},从中,crdate xtype = U

8确定列是否存在。

如果存在(SELECT * FROM列id是object_id(}}的名字)和名称= 'column名字)

更改表表名下拉列名称的名称

9确定该列是否为自添加。

如果columnproperty(object_id(}}),'col ','isidentity)= 1

打印'自我添加'

其他的

打印不是自动添加的



SELECT * FROM sys.columns哪里object_id = object_id(}}的名字)和is_identity = 1

10判断表中是否有索引

如果存在(SELECT * FROM sysindexes id是object_id(}}的名字)和名称= 'index名字)

打印'存在'

其他的

打印否

删除索引下拉索引表名称。指标名称

或者:在表名上删除索引索引名(貌似没有2000)

11查看数据库中的对象

SELECT * FROM sys.sysobjects WHERE name='object name' SELECT * FROM sys.sysobjects WHERE name='object name'