插入注册信息问题

nice90 2002-07-24 12:30:58
我的存储过程如下:
CREATE Procedure sp_personsign
@id varchar(12),
@password varchar(12),
@mail varchar(30),
@oicq varchar(10),
@pages varchar(100),
@sign varchar(500),
@introduce varchar(500),

@isValid char(3) output
as
if exists(select id from login where id=@id)

select @isvalid="bad"
else
insert into login (id,password,mail,oicq,pages,sign,introduce) values (@id,@password,@mail,@oicq,@pages,@sign,@introduce)
return

这样会出现这样的错误:
[Microsoft][ODBC SQL Server Driver][SQL Server]Procedure 'sp_personsign' expects parameter '@isValid', which was not supplied.
/chat/signok.asp, 行86

但是,我将存储过程改为下面这样:
CREATE Procedure sp_personsign
@id varchar(12),
@password varchar(12),
@mail varchar(30),
@oicq varchar(10),
@pages varchar(100),
@sign varchar(500),
@introduce varchar(500)

as
insert into login (id,password,mail,oicq,pages,sign,introduce) values (@id,@password,@mail,@oicq,@pages,@sign,@introduce)
return

不要其中的判断---是否在这个人注册之前就有人注册了该用户名,就能够写入个人的注册信息。
我想问到底该怎样写上面的提示。我不想用两个存储过程来判断。
...全文
71 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
blackcatiii 2002-07-24
  • 打赏
  • 举报
回复
这样改行不行.(你的存储过程里怎么用双引号做字符串分隔符啊?)
CREATE Procedure sp_personsign
@id varchar(12),
@password varchar(12),
@mail varchar(30),
@oicq varchar(10),
@pages varchar(100),
@sign varchar(500),
@introduce varchar(500),
as
declare @isValid char(3)
if exists(select id from login where id=@id)
select @isvalid='bad'
else
begin
insert into login (id,password,mail,oicq,pages,sign,introduce) values (@id,@password,@mail,@oicq,@pages,@sign,@introduce)
select @isvalid=''
end
select isValid=@isvalid
go

执行存储过程后,取rs("isValid")判断是否为"bad"

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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