用储存过程创建的问题!!!昨天问过,但没有真正解决!!帮帮手!!

coolylh 2005-10-16 12:31:00
if not exists(select 1 from sysobjects where name='Base_ChangePS1' and objectproperty(id,'IsProcedure')=1)
CREATE PROCEDURE Base_ChangePS1
@UserName varchar(50),
@UserPassword binary(16)
AS
UPDATE Base_AccountIndex
SET UserPassword = @UserPassword
WHERE (UserName = @UserName)

当不成功!!!!!!错误提示!!
------------------------
服务器: 消息 156,级别 15,状态 1,行 2
在关键字 'PROCEDURE' 附近有语法错误。
服务器: 消息 137,级别 15,状态 1,行 7
必须声明变量 '@UserPassword'。
------------------------
想达到的效果:如果存储过程存在,就不执行创建,不然就执行创建。
帮帮手!!!该怎样写?????
...全文
94 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
coolylh 2005-10-16
  • 打赏
  • 举报
回复
wgsasd311(自强不息)

正确!!

原来就是差个exec('')!!!!
晕!!

给分!
wgsasd311 2005-10-16
  • 打赏
  • 举报
回复
if not exists(select 1 from sysobjects where name='Base_ChangePS1' and objectproperty(id,'IsProcedure')=1)

exec('CREATE PROCEDURE Base_ChangePS1
@UserName varchar(50),
@UserPassword binary(16)
AS
UPDATE Base_AccountIndex
SET UserPassword = @UserPassword
WHERE (UserName = @UserName)')
wgsasd311 2005-10-16
  • 打赏
  • 举报
回复
if exists(select 1 from sysobjects where name='Base_ChangePS1' and objectproperty(id,'IsProcedure')=1)
drop procedure Base_ChangePS1
go
CREATE PROCEDURE Base_ChangePS1
@UserName varchar(50),
@UserPassword binary(16)
AS
UPDATE Base_AccountIndex
SET UserPassword = @UserPassword
WHERE (UserName = @UserName)
go

27,582

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧