数据库的问题,希望大家帮忙

yujingfree 2007-01-30 01:46:30
我已经按照这个修改了数据库里的存储过程了,现在的整体代码是
SQL的存储过程是:
CREATE PROCEDURE dbo.sp_InsertCDKEY
(
@cdkey varchar(50)='', -- pk
@password varchar(50)='', -- not null
@questions varchar(50)='', -- not null
@_error int =-1 output
)
AS
SET NOCOUNT ON -- 设置不受记录返回值影响
-- 初始变量默认值

declare @question varchar(50)
declare @answer varchar(50)

if @cdkey='' or @cdkey is null
begin
set @_error = 1
-- print '错误代码::'+cast(@_error as varchar)+'.描述:cdkey不能null或空.'
return
end

if @password = ''or @password is null
begin
set @_error = 2
-- print '错误代码:'+cast(@_error as varchar)+'.描述:password不能null或空.'
return
end

if EXISTS(SELECT cdkey FROM CSL_CDKEY WHERE cdkey = @cdkey)
begin
set @_error = 3
-- print '错误代码:'+cast(@_error as varchar)+'.描述:此帐号存在.'
return
end

INSERT INTO CSL_CDKEY (cdkey, password) VALUES (@cdkey, @password)
set @_error = 0
--print '返回:'+cast(@_error as varchar)+'.INSERT成功.'
return
GO

ASP的文件是:
<!--#include file = "conn.asp"-->
<!--#include file = "ADOVBS.inc"-->
<!--#include file = "md5.asp"-->


<%
dim cdkey,password,confirm_password,questions
cdkey = trim(request("cdkey"))
password = trim(request("password"))
confirm_password = trim(request("confirm_password"))
questions = trim(request("questions"))



if (password <> confirm_password) then
response.write "2次输入的密码不一致"
response.end
end if

set rs=server.CreateObject("adodb.recordset")
strsql="select cdkey from CSL_CDKEY where cdkey='"&trim(request("cdkey"))&"'"
rs.open strsql,conn,1,1
if not( rs.eof and rs.bof ) then
response.write"注册失败"
response.write"你输入的用户名已经存在,请重新输入!<a href=javascript:history.go(-1)><font color=red>按此返回!</font>"
rs.close
else

crypt_password = CSTR(md5(password))
set cmd=server.CreateObject("adodb.command")

Set cmd.ActiveConnection = conn
cmd.CommandType = adCmdStoredProc
cmd.CommandText = "sp_InsertCDKEY"


Set param = cmd.createparameter("@cdkey", advarchar, adparaminput, 50, cdkey)
cmd.Parameters.Append param

Set param = cmd.createparameter("@password", advarchar, adparaminput, 50, crypt_password)
cmd.Parameters.Append param

Set param = cmd.createparameter("@questions", advarchar, adparaminput, 50, questions)
cmd.Parameters.Append param

cmd.Parameters.Append cmd.CreateParameter("@_error",adInteger,adParamOutput)
cmd.Execute()


result=0
select case result
case 1
response.write"用户不能为空!!"
case 2
response.write"password不能null或空!!"
case 3
response.write"此帐号存在!!"
case 0
response.write"感谢您注册成功!"
end select
end if
%>

但是不知道为什么,我现在添加数据的时候,可以正常通过,但是questions的数据添加不到数据库里边去,是什么问题呢?
...全文
117 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

28,390

社区成员

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

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