Re: export data from asp to .mdb?



"Mr Pen" <MrPen@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:59876DDE-BE6B-4464-AD42-6CA0F928D61D@xxxxxxxxxxxxxxxx
Hi

I am currently trying to get a simple data submission asp form to export
data to an access database, this is the code for the contact_insert page

<html>
<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta name="Company" content="Kalptaru Infotech Ltd. [www.a2zhelp.com]">
<title>This page was generated using ASP Helper [www.a2zhelp.com]</title>
<style>
<!--
td { font-family: Tahoma; font-size: 8pt; background-color:
#E6F2FF;
border-style: solid; border-width: 1 }
th { font-family: Tahoma; font-size: 8pt; font-weight: bold;
background-color:
#E6E6E6; border: 1px outset #FF9900; }
input { font-family: Tahoma; font-size: 8pt; border: 1px inset
#E6E6E6; }
table { }
-->
</style>
</head>
<body>
<table border="0" cellpadding="2" width="100%">
<tr>
<td colspan="3" width="100%">Adding data to the database</td>
</tr>
<tr>
<td width="10%"></td>
<td width="80%">
<%const DATABASE_NAME="bigbrother.mdb"
dim Con
set Con=server.createobject("ADODB.Connection")
Con.open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="&
server.mappath(DATABASE_NAME) & ";User Id=Admin;Password="
%>

<%'-------Getting Name
dim Name
Name=Request("Name")
Name=Replace(Name,"'","''")%>
<%if trim(Name)="" then
bHasError=true
sErrMessage=sErrMessage & "<LI> Name cannot be empty."
end if%>
<%'-------Getting Email
dim Email
Email=Request("Email")
Email=Replace(Email,"'","''")%>
<%if trim(Email)="" then
bHasError=true
sErrMessage=sErrMessage & "<LI> Email cannot be empty."
end if%>
<%'-------Getting Query
dim Query
Query=Request("Query")
Query=Replace(Query,"'","''")%>
<%if trim(Query)="" then
bHasError=true
sErrMessage=sErrMessage & "<LI> Query cannot be empty."
end if%>
<%if bHasError then%>
<table><tr><td colspan="2" align="center"
width=100%><%Response.Write("Sorry we cannot proceed because of the
following
errors") %></td></tr>
<tr><td colspan=2 width=100%><%response.write
sErrMessage%></td></tr></table>
<%else%>
<%Dim sSQL
sSQL ="insert into [Contact]([Name],[Email],[Query]) values( " & "'" &
Name
& "','"&Email&"','"&Query&"')"
con.Execute sSQL
%>
Congratulations!!! Database was successfully updated.
<%End if
%></td>
<td width="10%"></td>
</tr>
<tr>
<td colspan="3" width="100%" bgcolor="#FF9900">
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td bgcolor="#E6E6E6">
<p align="center"><font face="Tahoma" size="1"
color="#0000FF"><br>
This
page was automatically generated using Kalptaru Infotech Ltd's
ASP
Helper, <br>
the automatic ASP Code generation software.<br>
For more information on how to improve the efficiency and
speed of
your ASP Programming and to know more about ASP Helper visit
<a
href="http://www.a2zhelp.com";>www.a2zhelp.com</a>
or send an email to <a
href="mailto:asphelper@xxxxxxxxxxx";>asphelper@xxxxxxxxxxx<br>
</a>
</font></td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>

and this is the error message i get:

Technical Information (for support personnel)

Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC Microsoft Access Driver] Operation must use an updateable
query.
/contact_insert.asp, line 65


Browser Type:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)

Page:
POST 81 bytes to /contact_insert.asp

POST Data:

Name=paul&Email=pen@xxxxxxxxxxx&Query=how+much+is+that+record+in+the+window%
3F...

Time:
07 March 2006, 15:11:00

any help would be gratefully appreciated

paul

Basically, you're using the wrong "cursor".
http://www.aspfaq.com/show.asp?id=2062

Also, "Name" is a reserved word.
It should not be used as the name of a field or variable.

It's not practice to mix CSS and <font> tags.

The link http://www.aspfaq.com/show.asp?id=2126 receommends using
"Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=;Data Source="
instead of
"DRIVER={Microsoft Access Driver (*.mdb)};User Id=Admin;Password=";DBQ="

Also, you should use Server.MapPath() to resolve your databases' path.

"Option Explicit" should be used to ensure that all variables are declared.


Perhaps this untested rewrite will help. Watch for word-wrap.

<%@ Language="VBScript" %>
<% Option Explicit
'*
Const cMDB = "bigbrother.mdb"
Const cDSN = "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database
Password=;Data Source="
'*
Const adCmdTable = &H0002
Const adLockBatchOptimistic = 4
Const adOpenKeySet = 1
'*
Dim sERR
sERR = ""
Dim sMSG
'*
Dim sName
sName = Trim(Request("Name"))
Dim sEmail
sEmail = Trim(Request("Email"))
Dim sQuery
sQuery = Trim(Request("Query"))
'*
If sName = "" Then
sERR = sERR & "<li> Name cannot be empty."
End If
If sEmail = "" Then
sERR = sERR & "<li> Email cannot be empty."
End If
If sQuery = "" Then
sERR = sERR & "<li> Query cannot be empty."
End If
'*
If sERR <> "" Then
sMSG = "<table><tr><td align='center' width='100%'>"
sMSG = sMSG & "Sorry, we cannot proceed because of the following
errors"
sMSG = sMSG & "</td></tr><tr><td width='100%'>"
sMSG = sMSG & sERR
sMSG = sMSG & "</td></tr></table>"
Else
Dim oADO
Set oADO = Server.CreateObject("ADODB.Connection")
oADO.Open cDSN & Server.MapPath(cMDB)
Dim oRST
Set oRST = Server.CreateObject("ADODB.Recordset")
oRST.Open "[Contact]", oADO, adOpenKeySet, adLockOptimistic,
adCmdTable
oRST.AddNew
oRST("Name").Value = Replace(sName,"'","''")
oRST("Email").Value = Replace(sEmail,"'","''")
oRST("Query").Value = Replace(sQuery,"'","''")
oRST.Update
oRST.Close
Set oRST = Nothing
oADO.Close
Set oADO = Nothing
sMSG = "Congratulations!!! Database was successfully updated."
End If
%>
<html>
<head>
<title>This page was generated using ASP Helper [www.a2zhelp.com]</title>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta name="Company" content="Kalptaru Infotech Ltd. [www.a2zhelp.com]">
<style type="text/css">
td { font-family: Tahoma;
font-size: 8pt;
background-color: #E6F2FF;
border-style: solid;
border-width: 1;
}
th { font-family: Tahoma;
font-size: 8pt;
font-weight: bold;
background-color: #E6E6E6;
border: 1px outset #FF9900;
}
input { font-family: Tahoma;
font-size: 8pt;
border: 1px inset #E6E6E6;
}
table { }
</style>
</head>
<body>
<table border="0" cellpadding="2" width="100%">
<tr>
<td colspan="3" width="100%">Adding data to the database</td>
</tr>
<tr>
<td width="10%">&nbsp;</td>
<td width="80%"><%=sMSG%></td>
<td width="10%">&nbsp;</td>
</tr>
<tr>
<td bgcolor="#FF9900" colspan="3" width="100%">
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td align="center" bgcolor="#E6E6E6">
<font face="Tahoma" size="1" color="#0000FF">
<br>
This page was automatically generated using Kalptaru Infotech Ltd's
ASP Helper,
<br>
the automatic ASP Code generation software.
<br>
For more information on how to improve the efficiency and speed of
your ASP Programming and to know more about ASP Helper visit
<a href="http://www.a2zhelp.com";>www.a2zhelp.com</a>
or send an email to
<a href="mailto:asphelper@xxxxxxxxxxx";>asphelper@xxxxxxxxxxx</a>
</font>
</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>


.



Relevant Pages

  • RE: Questions about asp 3.0 and aspnets differences
    ... mostly regarding the use of forms and database use. ... I have some pages on asp 3.0 that are like this: ... Dim dbconn = New ... i have used the new controls that you just drag and drop ...
    (microsoft.public.dotnet.framework.aspnet)
  • Re: Problem: DLL VB6 / ASP / Database / Windows 2003
    ... Since the code run in ASP/IIS needs to access other resources (database here) in your second case, the user account configured in IIS for the ASP must have permission to access the said database. ... Dim rs As Recordset ...
    (microsoft.public.vb.general.discussion)
  • Re: initial values of FP form fields
    ... For help in writing an ASP page that adds records, ... Saving Form Data in a Database ... Microsoft FrontPage MVP ... >> Dim cnMyDb ...
    (microsoft.public.frontpage.client)
  • Re: export data from asp to .mdb?
    ... I am currently trying to get a simple data submission asp form to export ... dim Name ... Database was successfully updated. ... Microsoft OLE DB Provider for ODBC Drivers ...
    (microsoft.public.inetserver.asp.db)
  • Re: Is This Possible ... ? Yes - Upload images to an Access database
    ... It looks like your databases folder is outside the root of your web ... I created a database exactly as you said, the only change I made was to ... and underneath an 'upload' button and a 'view images' button. ... Dim con As New Data.OleDb.OleDbConnection ...
    (microsoft.public.dotnet.framework.aspnet)