请看看这段ASP代码(50分)

  • 主题发起人 主题发起人 redwood
  • 开始时间 开始时间
R

redwood

Unregistered / Unconfirmed
GUEST, unregistred user!
34:sqluadd="insert into user (useraccount,userpassword,useremail,usertruename,usersex,userage,useraddress,usercode,userphone,jointime) values ('"&useraccount&"','"&userpassword&"' ,'"&useremail&"','"&usertruename&"','"&usersex&"','"&userage&"','"&useraddress&"','"&usercode&"','"&userphone&"','"&jointime&"');"
35:conn.Execute(sqluadd)
数据库所有字段都是有赋值的,可是却出现这样的问题:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC Microsoft Access Driver] 字段 'user.userpassword' 不能是零长度的字符串。
/adduser.asp, 第 35 行
再去查看数据库,实际上已经添加进去了。
这是怎么回事啊?我用的是ACCESS数据库,并且没有类型上的问题
 
试试用字符串代替。如“ABC”
修改'user.userpassword' 字段默认值为某一值。
 
把sql打出來看看﹐然后直接在access里執行﹐看看會不會出現同樣問題
 
'"&jointime&"');"
这个分号是什么东东?
 
很显然出现这个错误,是你user表的userpassword字段设为不可为空
而你insert时,变量userpassword中没有值,所以有那样的提示错误
解决这个问题有2个办法
1。你把user表里的userpassword设为可为空
2。你用response.write userpassword把你读到的密码输出看看,是什么
相信可以解决你的问题
 
同意 blueshand
 
我可以肯定userpassword是有值的,因为时候查看数据库,是有添加进去的
把userpassword字段设为可为空后,再次添加,仍然显示该错误,并且数据添加依然正常……
郁闷,为什么正常添加了的东西,会出现错误呢?
to Adnil,
那个分号是表结束的,可有可无
 
查查你写进去的时候的代码就知道了
 
你不防用
response.write userpassword
来查看一下它的值呀,
 
已经用response.write userpassword测试了,有值的
郁闷
 
郁闷
改为原始的添加,就什么问题都没有了
adds.addnew
adds("useraccount")=request.form("useraccount")
adds("userpassword")=request.form("userpassword")
adds("useremail")=request.form("useremail")
adds("usertruename")=request.form("usertruename")
adds("usersex")=request.form("sex")
adds("userage")=request.form("userage")
adds("useraddress")=request.form("useraddress")
adds("usercode")=request.form("usercode")
adds("userphone")=request.form("userphone")
adds("jointime")=now
adds.update
 
后退
顶部