我写了一段代码(如下),想达到的效果是:在文本栏中录入文本,提交后,录入的文本被添加到相应的数据表当中。但是,这段代码执行的效果有点问题:每次录入后,其他数据项都可以正常录入到数据表中,惟独第一项“书籍编号”录入不了,不知道哪里出了问题,请大家帮帮忙!
我的数据表中有5个数据字段:
书号(主键)、书名、出版社、出版日期、价格
<body>
<%
dim cn,rs,Num,Nam,Pub,Ptim,Prc
set cn=server.CreateObject("adodb.connection")
cn.open"Driver={SQL Server};Server=myname;Database=ASPText;Uid=sa;Pwd=sa"
Num=request("textfield1")
Nam=request("textfield2")
Pub=request("textfield3")
Ptim=request("textfield4")
Prc=request("textfield5")
set rs=server.CreateObject("adodb.recordset")
rs.open"insert into Book values ('"&Num&"','"&Nam&"','"&Pub&"','"&Ptim&"','"&Prc&"')",cn
%>
<form id="form1" name="form1" method="post" action="insert.asp">
<table width="760" height="100" border="0">
<tr>
<td width="264" height="30"><label>书籍号码:
<input type="text" name="textfield1" />
</label></td>
<td width="240" height="30"><label>书名:
<input type="text" name="textfield2" />
</label></td>
<td width="242"><label>出版社:
<input type="text" name="textfield3" />
</label></td>
</tr>
<tr>
<td height="30"><label>出版日期:
<input type="text" name="textfield4" />
</label></td>
<td height="30"><label>价格:
<input type="text" name="textfield5" />
</label></td>
<td> </td>
</tr>
<tr>
<td height="30"><label>
<input type="submit" name="Submit" value="添加" />
<input type="reset" name="Submit2" value="重置" />
</label></td>
<td height="30"> </td>
<td> </td>
</tr>
</table>
</form>
</body>
參考答案:建议用rs.addnew 来添加新记录,直接Insert可能会遇到一些很难想出原因的错误