主题:  数据库记录插入

sunslee

职务:普通成员
等级:1
金币:0.0
发贴:107
#12003/5/15 11:29:02
<%
title=request.form("title")
content=request.form("content")
author=request.form("author")
sorc=request.form("source")
tim=request.form("time")
outline=request.form("outline")

response.Write((title)&(content)&(author)&(sorc)&(tim))

select case outline
    case "qingan"
        select case outline
        case "lmxz"
            set mycn=server.createobject("ADODB.Connection")
            set myrs=server.createobject("ADODB.Recordset")
            dbq=server.MapPath("/db/qingan.mdb")
            mycn.Open "driver={microsoft access driver (*.mdb)};dbq="&dbq
            strsql="insert into lmxz (title,content,author,source,time) values ('"&title&"','"&content&"','"&author&"','"&sorc&"','"&tim&"')"
            myrs.open strsql, mycn
        
        case "ayac"
            set mycn=server.createobject("ADODB.Connection")
            set myrs=server.createobject("ADODB.Recordset")
            dbq=server.MapPath("/db/qingan.mdb")
            mycn.Open "driver={microsoft access driver (*.mdb)};dbq="&dbq
            strsql="insert into ayac (title,content,author,source,time) values ('"&title&"','"&content&"','"&author&"','"&sorc&"','"&tim&"')"
            myrs.open strsql, mycn
        
        case "qqqj"
            set mycn=server.createobject("ADODB.Connection")
            set myrs=server.createobject("ADODB.Recordset")
            dbq=server.MapPath("/db/qingan.mdb")
            mycn.Open "driver={microsoft access driver (*.mdb)};dbq="&dbq
            strsql="insert into qqqj (title,content,author,source,time) values ('"&title&"','"&content&"','"&author&"','"&sorc&"','"&tim&"')"
            myrs.open strsql, mycn    
        end select        
end select
%>



大虾帮忙看一下,为什么数据库里面没插入记录。原因何在谢谢!



{ 在指尖上绽放的花朵 }

职务:普通成员
等级:5
金币:14.0
发贴:3209
#22003/5/15 23:35:43
研究一下代码看看~~

要执行insert操作第一步,request.form("outline")必须为"qingan"才可以。

第二步,request.form("outline")必须是"lmxz"、"ayac"、"qqqj"之一才可以。

ok 问题出来了~

如果request.form("outline")是"qingan",那么,第二步不通过。

如果request.form("outline")不是"qingan",那么,第一步不通过。

知道错误何在了?



sunslee

职务:普通成员
等级:1
金币:0.0
发贴:107
#32003/5/16 19:32:57
楼上的朋友您好,这只是一部分代码,通过select case来进行比较选择后进行分布骤处理,即根据不同的outline来进行插入哪个数据库,首先进行qingan的辨别,是第一条件,第二条件在进行lmxz、ayac、qqqj辨别后插入数据到相应数据库。程序运行后报错在
strsql="insert into lmxz (title,content,author,source,time) values ('"&title&"','"&content&"','"&author&"','"&sorc&"','"&tim&"')"
myrs.open strsql, mycn

请各位大虾帮忙喔。谢谢,帮我看看代码这段错在哪里怎么修改:)谢谢。



{ 在指尖上绽放的花朵 }

职务:普通成员
等级:5
金币:14.0
发贴:3209
#42003/5/16 19:54:21
myrs.open strsql, mycn,3,2

缺少参数。



sunslee

职务:普通成员
等级:1
金币:0.0
发贴:107
#52003/5/16 22:34:30
这个参数必须吗,各都表示什么意思?
有朋友说要加execute不知道加哪里,不加能用吗?能不能把文件给你帮我测试一下呢?谢了,老虾



奔腾的心

职务:普通成员
等级:7
金币:10.0
发贴:6114
#62003/5/17 8:36:43
一般情况下,建立连接conn

写好sql语句strsql

就执行execute了,比如 conn.execute(strsql)



{ 在指尖上绽放的花朵 }

职务:普通成员
等级:5
金币:14.0
发贴:3209
#72003/5/17 11:52:16
这是两种不同的操作方法。

一种是建立conn,然后定义SQLstr,再执行~

conn.execute(SQLstr)。

你这个是另外的操作方法。

建立conn,定义RecordSet,再定义SQLstr,继而执行~

RecordSet.open SQLstr, conn,参数1,参数2

加上那两个参数试试看?