Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net ASP和VBScript-将记录添加到数据库_Asp.net_Vbscript - Fatal编程技术网

Asp.net ASP和VBScript-将记录添加到数据库

Asp.net ASP和VBScript-将记录添加到数据库,asp.net,vbscript,Asp.net,Vbscript,好的,我尝试向现有的ASP网页添加一些代码,该网页连接到access数据库进行数据收集。代码应检查“车队”表中不同的“modecode”变量是否与“设备”表匹配。如果缺少“设备”模式,则添加缺少的模式。我遇到的问题是,在第一次加载页面时,它抛出了一个错误,但添加了正确的记录。然后,如果重新加载页面,它将正常显示。代码如下 编辑:当我添加新记录时,错误是否可能是因为没有定义“Equiment”中的每个变量 编辑:我得到的错误只是一个“500-内部服务器错误”,我不知道如何诊断 Set conn =

好的,我尝试向现有的ASP网页添加一些代码,该网页连接到access数据库进行数据收集。代码应检查“车队”表中不同的“modecode”变量是否与“设备”表匹配。如果缺少“设备”模式,则添加缺少的模式。我遇到的问题是,在第一次加载页面时,它抛出了一个错误,但添加了正确的记录。然后,如果重新加载页面,它将正常显示。代码如下

编辑:当我添加新记录时,错误是否可能是因为没有定义“Equiment”中的每个变量

编辑:我得到的错误只是一个“500-内部服务器错误”,我不知道如何诊断

Set conn = Server.CreateObject("ADODB.Connection")
conn.open "vehicles","",""

Dim modeArr()       'array to hold modecodes
Dim i       'array index
Dim needToClickUpdate       'If an Equipment # > than a Fleet #, 
Dim k       'for loop index
needToClickUpdate = ""
'Get the total # of active vehicles by mode from the fleet table.
strFleet = "SELECT Sum(Number) As NumVehPerMode, modecode FROM fleet WHERE MemID=" & Request("MemID") & " And status='A' GROUP BY modecode ORDER BY modecode"
Set rstFleet = Server.CreateObject("ADODB.Recordset")
rstFleet.Open strFleet, conn, 3, 3      
If rstFleet.RecordCount > 0 Then
    rstFleet.MoveFirst 
    Dim TotNumVeh() 'array to hold # vehicles per mode
    Dim TotModLis() 'array with list of modes
    Dim TotModLis2()
    i = 0
    while Not rstFleet.EOF
        Redim Preserve TotNumVeh(i+1)
        TotNumVeh(i) = rstFleet("NumVehPerMode")
        Redim Preserve TotModLis(i+1)
        TotModLis(i) = rstFleet("modecode")
        Redim Preserve TotModLis2(i+1)
        TotModLis2(i) = rstFleet("modecode")
        i = i + 1
        rstFleet.MoveNext
    wend

End If
rstFleet.Close
'This section grabs which modes have equipment records
strEquipmodecheck = "SELECT modecode FROM Equipment WHERE MemID=" & Request("MemID")    & " AND modecode IN ('" & Join(TotModLis, "','") & "') ORDER BY modecode"
rstFleet.Open strEquipmodecheck, conn, 3, 3 
If rstFleet.RecordCount > 0 Then
    rstFleet.MoveFirst 
    Dim n
    Dim m
    Dim Equipmodes()
    Dim MissingModes : Missingmodes = Array()
    Dim isFound
    m = 0
    n = 0
    p = 0
    while Not rstFleet.EOF
        Redim Preserve Equipmodes(m+1)
        Equipmodes(m) = rstFleet("modecode")
        m = m + 1
        rstFleet.MoveNext   
    wend

End If
rstFleet.Close
'This section compares the mode lists from Fleet and Equipment and writes a list of Missing Modes
For m = 0 To UBound(TotModLis2) - 1
    isFound = False
    For n = 0 To UBound(Equipmodes) - 1
        If TotModLis2(m) = Equipmodes(n) Then
            isFound = True
        End If
    Next 'j
    If Not isFound Then
        Redim Preserve MissingModes(p+1)
        MissingModes(p) = TotModLis2(m)
        p = p + 1
    End If
Next 'i
'This section adds equipment records based on the list of missing modes
newequips = "SELECT * FROM Equipment"
rstFleet.Open newequips, conn, 3, 3 
For Each x in MissingModes
rstFleet.Addnew
rstFleet("MemID") = Request("MemID")
rstFleet("modecode") = x
rstFleet.Update
Next
rstFleet.Close

您到底遇到了什么错误?您使用的是Internet Explorer吗?如果是这样,禁用友好的错误消息,您将得到完整的错误-不工作-我想我们的服务器设置为显示它?可能是。尝试从web服务器(通过远程桌面)本地浏览页面,我很确定stacktrace会出现完全错误。好的,我想我必须弄清楚如何获得访问权限才能做到这一点。我对这方面很在行,并不是我们服务器的经理或其他什么。