急 请高手指教表单提交数据库问题!!

py_mfkmfk 2008-03-28 04:18:48
workstate111.asp
<%
set conn=opendb()
set rs=server.createobject("adodb.recordset")
sql="select * from work_wz "
rs.open sql,conn,1,1
%>

<tr>
<td><%=rs("tc_dept")%></td>
<td><%=rs("part_order")%></td>
<td><%=rs("part_th")%></td>
<td><%=rs("part_name")%></td>
<td><%=rs("plan_amount")%></td>
<td><%=rs("part_date")%></td>
<td><%=rs("qianshu")%></td>
<td><%=rs("need_date")%></td>
<td><%=rs("chn_date")%></td>
<td><%=rs("sj_date")%></td>
<td><%=rs("tq_day")%></td>

workstate_in111.asp

<%
set conn=opendb()

if request("save")="提交" then
conn.execute "insert into work_wz(tc_dept,part_order,part_th,part_name,plan_amount,part_date,qianshu,need_date,chn_date,sj_date,tq_day) values('"& request("tc_dept")&"','"& request("part_order")&"','"& request("part_th")&"','"& request("part_name")&"','"& request("plan_amount")&"','"& request("part_date")&"','"& request("qianshu")&"','"& request("need_date")&"','"& request("chn_date")&"','"& request("sj_date")&"','"& request("tq_day")& "')"
response.redirect "workstate111.asp"
%>

<% end if %>


<center>
<form method="POST" action="workstate_in111.asp" name="form2" >
<table border="0" width="95%" id="table1" >
<tr>
<td width="16%"><b>提出部门</b></td>
<td width="83%">
<input type="text" name="tc_dept" size="20" class="style1" >
</td>
</tr>
<tr>
<td width="16%" ><b>令    号</b></td>
<td width="83%"><input type="text" name="part_order" size="20" class="style1">
</td>
</tr>
<tr>
<td width="16%"><b>零件图号</b></td>
<td width="83%"><input type="text" name="part_th" size="20" class="style1">
</td>

</tr>
<tr>
<td width="16%"><b>零件名称</b></td>
<td width="83%"><input type="text" name="part_name" size="20" class="style1">
</td>

</tr>
<tr>
<td width="16%"><b>计划数量</b></td>
<td width="83%"><input type="text" name="plan_amount" size="20" class="style1">
</td>

</tr>
<tr>
<td width="16%"><b>产品配套期</b></td>
<td width="83%"><input type="text" name="part_date" size="20" class="style1">
</td>

</tr>
<tr>
<td width="16%"><b>所欠数量</b></td>
<td width="83%"><input type="text" name="qianshu" size="20" class="style1">
</td>

</tr>
<tr>
<td width="16%"><b>要求到料时间</b></td>
<td width="83%"><input type="text" name="need_date" size="20" class="style1">
</td>

</tr>
<tr>
<td width="16%"><b>承诺到料时间</b></td>
<td width="83%"><input type="text" name="chn_date" size="20" class="style1">
</td>

</tr>
<tr>
<td width="16%"><b>实际到料时间</b></td>
<td width="83%"><input type="text" name="sj_date" size="20" class="style1">
</td>

</tr>
<tr>
<td width="16%"><b>拖期天数</b></td>
<td width="83%"><input type="text" name="tq_day" size="20" class="style1">
</td>

</tr>


<tr>
<td colspan=2>
                    

<input type="submit" value="提交" name="save">     <input type="reset" value="取消" name="B2">
</td>
</tr>
</table>
</form>
</center>
高手帮我看看,哪里出错了,怎么插入不了数据库?还有,要怎么写才能在数据库中每条记录自动生成一个ID号?
...全文
171 点赞 收藏 15
写回复
15 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
conn.execute "insert into work_wz(tc_dept,part_order,part_th,part_name,plan_amount,part_date,qianshu,need_date,chn_date,sj_date,tq_day) values('"& request("tc_dept")&"','"& request("part_order")&"','"& request("part_th")&"','"& request("part_name")&"','"& request("plan_amount")&"','"& request("part_date")&"','"& request("qianshu")&"','"& request("need_date")&"','"& request("chn_date")&"','"& request("sj_date")&"','"& request("tq_day")& "')"

如果列名没错,而且也存在
看你这个里面好多日期类型的
你试一下把request("part_date")改为gatedate()或now()试试
回复
zling19 2008-03-28
列名 'part_date' 无效是因为你的数据是datetime型的,而前台获取到的数据类型应该是文本类型的,你在插入数据的时候要先将'part_date' 的数据转换成日期型的(cdate函数)。建议你不要用insert into这样的形式写,很容易出错,用update函数写比较好。
回复
myvicy 2008-03-28
列名 'part_date' 无效。

要么是你写错了,要么是你表中没这个字段。
回复
SQL SERVER的数据库的自动编号
你设置为int ,在"设计表"中,选中某列,设置为数值型,在下面的"标志"旁选"是"
回复
myvicy 2008-03-28
你的sql对不对?
自动生成id好就在表结构中加一个自动编号的字段。
回复
snlixing 2008-03-28
[Quote=引用 7 楼 itzhiren 的回复:]
列名 'part_date' 无效。

好好检查,表里面确实有这个字段吗?
[/Quote]
回复
ymle1228 2008-03-28
你的表里有没有'part_date'这个字段
回复
列名 'part_date' 无效
一般是你数据里没有该表
回复
itzhiren 2008-03-28
列名 'part_date' 无效。

好好检查,表里面确实有这个字段吗?
回复
py_mfkmfk 2008-03-28
数据库中有part_date这个字段,类型为datetaime,是不是我的代码哪个地方写错了??

错误类型:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC SQL Server Driver][SQL Server]列名 'part_date' 无效。
/office/mrp_admin/workstate_in111.asp, 第 30 行


浏览器类型:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)

网页:
POST 141 ??? /office/mrp_admin/workstate_in111.asp

POST Data:
tc_dept=%B9%AB%CB%BE&part_order=&part_th=&part_name=&plan_amount=&part_date=&qianshu=&need_date=&chn_date=&sj_date=&tq_day=&save=%CC%E1%BD%BB
回复
shinewill 2008-03-28


sql Server 里面有自动编号的,必须是int型的。
至于你的错误,我想你需要将你的字符串格式化成时间字符串的形式,
当然,
也可以改数据库中的日期型为char或varchar。
回复
snlixing 2008-03-28
看看数据库中有没有part_date这个字段
回复
py_mfkmfk 2008-03-28
错误类型:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC SQL Server Driver][SQL Server]列名 'part_date' 无效。
/office/mrp_admin/workstate_in111.asp, 第 30 行

出现这个错误,我数据库中的字段设置为日期型
回复
ld2099 2008-03-28
数据库有自动编号类型

IE设置把显示友好错误去掉,看看具体什么错误,是不是字段类型不正确还是没有屏蔽单引号
或者排除法,一个一个字段的插入
回复
itzhiren 2008-03-28
想自动生成一个ID号,只要在表中增加一个自动编号的字段就可以了

至于为什么插入不了数据库,需要你仔细认真的检查每一个变量的类型、值是否和数据库设计的字段类型、值的要求一致
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2008-03-28 04:18
社区公告
暂无公告