发布网友 发布时间:2022-04-26 07:18
共1个回答
热心网友 时间:2022-04-10 10:49
这种判断一般用于创建
表/视图/存储过程
之前。
为了让一个完整脚本不会出错,先做一个判断,在已有这个
表/视图/存储过程
的名称的情况下需要跳出整个过程或另行其他方案。
还有一个特别普遍的应用就是创建表:
USE
dbTest
GO
IF
OBJECT_ID
('testTable')
IS
NOT
NULL
DROP
TABLE
testTable
GO
CREATE
TABLE
testTable(
column1
CHAR
(5)
NOT
NULL,
column2
VARCHAR
(10)
NOT
NULL
)
GO
这样创建表的好处就是:不必再去写一个Alter
Table脚本留存而且如果有重复就删掉,保证脚本运行正常。流程控制严格的公司都用这种方式部署,比较便于管理。
坏处就是:有重要数据还是要备份的。
视图/存储过程也是同理。
随着使用越多你就会发现没有无用的语句,只是你没有遇到相应的情况。