首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

创建存储过程语句的异常

2012-01-23 
创建存储过程语句的错误我使用一下的语句创建存储过程,为什么会不对?如果要实现我想要的结果,该怎么写?谢

创建存储过程语句的错误
我使用一下的语句创建存储过程,为什么会不对?如果要实现我想要的结果,该怎么写?谢谢!
if   exists(select   *   from   sysobjects   where   name= 'prHello '   and   type= 'p ')
    begin
        alter   procedure   prHello
        as
        select   'alter '
    end
else
    begin
        create   procedure   prHello
        as
        select   'create '
    end

错误提示:
服务器:   消息   156,级别   15,状态   1,行   3
在关键字   'procedure '   附近有语法错误。
服务器:   消息   156,级别   15,状态   1,行   9
在关键字   'procedure '   附近有语法错误。

[解决办法]
if exists(select * from sysobjects where name= 'prHello ' and type= 'p ')
begin
exec( '
alter procedure prHello
as
select ' 'alter ' ' ')
end
else
begin
exec( 'create procedure prHello
as
select ' 'create ' ' ')
end

[解决办法]
用动态实现吧,一个批处理中不能与别的语句组合
if exists(select * from sysobjects where name= 'prHello ' and type= 'p ')
begin

exec( 'alter procedure prHello
as
select ' 'alter ' '
end ')
end
else
begin
exec( 'create proc prHello
as
select ' 'create ' ' ')
end

热点排行