Forums

This topic is locked

Connection string and Command object: HELP!!!

Posted 24 Oct 2001 00:21:48
1
has voted
24 Oct 2001 00:21:48 Michael Rudge posted:
I changed my connection string from the UD created one to: MM_Loop_STRING = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("\looppharmacy\database\Loop_Pharmacy.mdb" & ";"
Since then my registration page (per Hiran's tutorial) won't work. I have had problems all weekend dealing with the ADO command object and keep getting the same error:
Error Type:
Microsoft JET Database Engine (0x80040E14)
Syntax error in INSERT INTO statement.
/looppharmacy/registration.asp, line 117


Is there some issue dealing with command object? Is there something missing from the connection string?
here is the code that inserts:
<%@LANGUAGE="VBSCRIPT"%>
<!--#include file="Connections/Loop.asp" -->
<!--#include File="procedures.asp" -->
<%
' check if login exists
Dim rsCheckDuplicates__strLoginID
rsCheckDuplicates__strLoginID = "'xxx'"
if (Request.Form("Login_ID" <> "" then rsCheckDuplicates__strLoginID = Request.Form("Login_ID"
Session("svTempLogin" = Request.Form("Login_ID"
%>
<%
'create recordset that check for login ID
set rsCheckDuplicates = Server.CreateObject("ADODB.Recordset"
rsCheckDuplicates.ActiveConnection = MM_Loop_STRING
rsCheckDuplicates.Source = "SELECT * FROM MainUser WHERE Login_ID = '" + Replace(rsCheckDuplicates__strLoginID, "'", "''" + "'"
rsCheckDuplicates.CursorType = 0
rsCheckDuplicates.CursorLocation = 2
rsCheckDuplicates.LockType = 3
rsCheckDuplicates.Open()
rsCheckDuplicates_numRows = 0
%>
<%
If NOT rsCheckDuplicates.EOF then
Response.Redirect("RetryReg.asp"
Else
%>
<%
End if
%>
<%
' *** Edit Operations: declare variables

MM_editAction = CStr(Request("URL")
If (Request.QueryString <> "" Then
MM_editAction = MM_editAction & "?" & Request.QueryString
End If

' boolean to abort record edit
MM_abortEdit = false

' query string to execute
MM_editQuery = ""
%>
<%
' *** Insert Record: set variables

If (CStr(Request("MM_insert") <> "" Then

MM_editConnection = MM_Loop_STRING
MM_editTable = "MainUser"
MM_editRedirectUrl = "RegSuccess.asp"
MM_fieldsStr = "FName|value|LName|value|Address|value|City|value|cmbstates|value|Zip|value|Phone_Number|value|Email|value|Phy_Num|value|Login_ID|value|Password|value|hfAccessGroup|value|hfDate|value"
MM_columnsStr = "FName|',none,''|LName|',none,''|Address|',none,''|City|',none,''|State|',none,''|Zip|',none,''|Phone_Number|',none,''|Email|',none,''|Phy_Num|',none,''|Login_ID|',none,''|Password|',none,''|Access_Group|',none,''|DateEntered|',none,''"

' create the MM_fields and MM_columns arrays
MM_fields = Split(MM_fieldsStr, "|"
MM_columns = Split(MM_columnsStr, "|"

' set the form values
For i = LBound(MM_fields) To UBound(MM_fields) Step 2
MM_fields(i+1) = CStr(Request.Form(MM_fields(i)))
Next

' append the query string to the redirect URL
If (MM_editRedirectUrl <> "" And Request.QueryString <> "" Then
If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0 And Request.QueryString <> "" Then
MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.QueryString
Else
MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.QueryString
End If
End If

End If
%>
<%
' *** Insert Record: construct a sql insert statement and execute it

If (CStr(Request("MM_insert") <> "" Then

' create the sql insert statement
MM_tableValues = ""
MM_dbValues = ""
For i = LBound(MM_fields) To UBound(MM_fields) Step 2
FormVal = MM_fields(i+1)
MM_typeArray = Split(MM_columns(i+1),","
Delim = MM_typeArray(0)
If (Delim = "none" Then Delim = ""
AltVal = MM_typeArray(1)
If (AltVal = "none" Then AltVal = ""
EmptyVal = MM_typeArray(2)
If (EmptyVal = "none" Then EmptyVal = ""
If (FormVal = "" Then
FormVal = EmptyVal
Else
If (AltVal <> "" Then
FormVal = AltVal
ElseIf (Delim = "'" Then ' escape quotes
FormVal = "'" & Replace(FormVal,"'","''" & "'"
Else
FormVal = Delim + FormVal + Delim
End If
End If
If (i <> LBound(MM_fields)) Then
MM_tableValues = MM_tableValues & ","
MM_dbValues = MM_dbValues & ","
End if
MM_tableValues = MM_tableValues & MM_columns(i)
MM_dbValues = MM_dbValues & FormVal
Next
MM_editQuery = "insert into " & MM_editTable & " (" & MM_tableValues & " values (" & MM_dbValues & ""

If (Not MM_abortEdit) Then
' execute the insert
Set MM_editCmd = Server.CreateObject("ADODB.Command"
MM_editCmd.ActiveConnection = MM_editConnection
MM_editCmd.CommandText = MM_editQuery
MM_editCmd.Execute
MM_editCmd.ActiveConnection.Close

If (MM_editRedirectUrl <> "" Then
Response.Redirect(MM_editRedirectUrl)
End If
End If

End If
%>

Michael Rudge

Reply to this topic