Record Update ASP conn.Execute sql

For some reason it doesnt like my code:
I can Add and Delete Records from my table fine, but Update will n ot fly.
Any ideas?

Basically I am running the code that I revised based on the
http://www.w3schools.com/ADO/ado_update.asp

<html>
<body><h2>Update Record</h2>
 
<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "D:\Performance Assurance Team\East_pmi.mdb"
 
cid=Request.Form("CAC")
 
if Request.form("Date Closed")="" then
  set rs=Server.CreateObject("ADODB.Recordset")
  rs.open "SELECT * FROM tblProactiveIssues WHERE CAC='" & cid & "'",conn
  %>
  <form method="post" action="RecordUpdate.asp">
  <table>
  <%for each x in rs.Fields%>
  <tr>
  <td><%=x.name%></td>
  <td><input name="<%=x.name%>" value="<%=x.value%>"></td>
  <%next%>
  </tr>
  </table>
  <br /><br />
  <input type="submit" value="Update record">
  </form>
<%
else
  sql="UPDATE tblProactiveIssues SET"
  sql=sql & "Region='" & Request.Form("Region") & "',"
  sql=sql & "Date Added='" & Request.Form("Date Added") & "',"
  sql=sql & "CAC='" & Request.Form("CAC") & "',"
  sql=sql & "CKTID='" & Request.Form("CKTID") & "',"
  sql=sql & "ACNA='" & Request.Form("ACNA") & "',"
  sql=sql & "Customer='" & Request.Form("Customer") & "',"
  sql=sql & "Ticket Number='" & Request.Form("Ticket Number") & "',"
  sql=sql & "Ticket Source='" & Request.Form("Ticket Source") & "',"
  sql=sql & "Monitoring Source='" & Request.Form("Monitoring Source") & "',"
  sql=sql & "Date Closed='" & Request.Form("Date Closed") & "',"
  sql=sql & "Disposition Code='" & Request.Form("Disposition Code") & "',"
  sql=sql & "Summary='" & Request.Form("Summary") & "'"
  sql=sql & " WHERE CAC='" & cid & "'"
  'on error resume next
   'conn.Execute sql
  if err<>0 then
    response.write("No update permissions!")
  else 
   Response.Redirect "View.asp" 
    'response.write("Record " & cid & " was updated!")
  end if 
end if
conn.close
%></body>
</html>

Open in new window

vzdogAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Guy Hengel [angelIII / a3]Billing EngineerCommented:
you have no space between SET and Region:
  sql="UPDATE tblProactiveIssues SET "
  sql=sql & " Region='" & Request.Form("Region") & "',"

Open in new window

0
hieloCommented:
Do you get any runtime errors?

Also, I see:
"Date Added='" & Request.Form("Date Added") & "',"

is Date added a Date/Time Field? IF yes, then
 Request.Form("Date Added") needs to be in mm/dd/yyyy format

AND the value needs # instead of apostrophes:
"Date Added=#" & Request.Form("Date Added") & "#,"
0
vzdogAuthor Commented:
Some of my fields are numeric & alpha combined so is there something I should be using to indicate as such?
Date added is a date so how would I specify the format within the code?
0
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

hieloCommented:
numeric field values should NOT be enclosed in apostrophes
date field values  need to be enclosed in #
other values need to be enclosed in apostrophes
ex:

Update table Set aquisitionDate=#11/29/2008#, value=40000, condition='excellent' WHERE product_id=3
0
vzdogAuthor Commented:
What about when it is a combination of both in the same field?
ie:
PD123456
or
SHD2HH4
0
vzdogAuthor Commented:
Also I am getting an error:
Error Type:
Microsoft JET Database Engine (0x80040E14)
Syntax error in UPDATE statement.
/PMI/RecordUpdate.asp, line 44

it is:

conn.Execute sql
0
Guy Hengel [angelIII / a3]Billing EngineerCommented:
please response.write the value of sql variable before the execute, so you can inspect what goes wrong.
0
vzdogAuthor Commented:
I have no idea what you are telling me to do..
0
hieloCommented:
>>What about when it is a combination of both in the same field?
ie:
PD123456 or SHD2HH4

You need to look at the definition of your table and see if the field data type of your Table is numeric. You are focusing on the contents of your table. You need to focus on the definition of your table.

On another note, those are NOT numeric values. You can add numbers:
1+3=4

You cannot add: PD123456 + SHD2HH4

So that MUST be text field, in which case you need to enclose the values in apostrophes.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Oracle Database

From novice to tech pro — start learning today.