相关疑难解决方法(0)

如何检测存储过程是否已存在

我必须编写一个部署脚本,如果存储过程存在或不存在,该脚本将起作用.即如果它存在,那么我需要改变它,否则创建它.

我怎么能在sql中这样做.

我正在使用SQL Server 2005

sql stored-procedures sql-server-2005

127
推荐指数
6
解决办法
18万
查看次数

关键字“TRIGGER”附近的 T-SQL 语法不正确

我创建而不是这样的触发器:

CREATE TRIGGER ReadOnlyEvent ON 
TableName INSTEAD OF INSERT, UPDATE, DELETE AS BEGIN 
RAISERROR('Tables are read only.', 16, 1 ) ROLLBACK TRANSACTION END;
Run Code Online (Sandbox Code Playgroud)

该代码工作正常。但是当我将它与 'IF' 结合使用时,我得到了一个错误:

 IF OBJECT_ID ('ReadOnlyEvent', 'TR') IS NULL 
    CREATE TRIGGER ReadOnlyEvent ON
 TableName INSTEAD OF INSERT, UPDATE, DELETE AS BEGIN 
 RAISERROR('Tables are read only.', 16, 1 ) ROLLBACK TRANSACTION END;
Run Code Online (Sandbox Code Playgroud)

关键字“TRIGGER”附近的语法不正确。

我也用 BEGIN END 尝试了 IF:

IF OBJECT_ID ('ReadOnlyEvent', 'TR') IS NULL
BEGIN
    CREATE TRIGGER ReadOnlyEvent ON
    TableName INSTEAD OF INSERT, UPDATE, DELETE AS BEGIN 
    RAISERROR('Tables …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server triggers

1
推荐指数
1
解决办法
2470
查看次数