webForumDet fria alternativet

Update problem

14 svar · 202 visningar · startad av tapani

tapaniMedlem sedan apr. 200093 inlägg
#1

Har en kod som jag använt tidigare
Har ändrat sökväg och liknande men nu vill den inte fungera.

Microsoft JET Database Engine error '80040e14'

Syntax error in UPDATE statement.

/bokn/edit2.asp, line 6

Line6 = Connect.Execute(SQL)

<%	
	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=XXXXX")
	SQL = "Update Kund SET "
	SQL = SQL & "Foretag = '" & Request.Form("foretag") & "', PersonNr = '" & Request.Form("personnr") & "', FNamn = '" & Request.Form("fnamn") & "', ENamn = '" & Request.Form("enamn") & "', Adress = '" & Request.Form("adress") & "', PostNr = '" & Request.Form("postnr") & "', Ort = '" & Request.Form("ort") & "', Tel = '" & Request.Form("tel") & "', Fax = '" & Request.Form("fax") & "', Email = '" & Request.Form("email") & "', Datum = '" & Request.Form("datum") & "', Langd = '" & Request.Form("langd") & "', Vikt = '" & Request.Form("vikt") & "', FaktNr = '" & Request.Form("faktnr") & "', Platser = '" & Request.Form("platser") & "', Note = '" & Request.Form("note") & "', Kurstyp = '" & Request.Form("kurstyp") & "', Pass = '" & Request.Form("pass") & "', Steg = '" & Request.Form("steg") & "', Inlagt = '" & Request.Form("inlagt") & "', Sign = '" & Request.Form("sign") & "' Where KundId = " & Request.Form("AD")
	Connect.Execute(SQL)
%>
 <font size="2" face="Verdana, Arial, Helvetica, sans-serif">Ändringen är genomförd!!!<br>
<BR>
Du kommer automatiskt tillbaka till din s&ouml;kning...</font><BR>
<meta http-equiv="Refresh" content="3; URL=sortf.asp">

Någon som kan se något fel?

tapaniMedlem sedan apr. 200093 inlägg
#2

Okej jag vet var problemet är men vet ej hur jag ska lösa detta.

På sida 1 där uppgifter kommer fram som jag vill ändra på så har jag 3 rullningslistor där jag kan välja 3-4 olika värden. ser ut så här:

<font size="2" face="Arial, Helvetica, sans-serif"><font color="#FFFFFF" size="1">Kurstyp: </font><font color="#000000" size="1"><% =rsKund("Kurstyp") %></font></font> 
        <Select name="kurstyp">
          <option>V&auml;lj h&auml;r</option>
          <option value="FFord">FFord</option>
          <option value="FOpel">FOpel</option>
          <option value="FRenault">FRenault</option>
          <option value="Touring">Touring</option>
        </Select>

Koden som sen uppdaterar detta är:

Kurstyp = '" & Request.Form("kurstyp") & "',

/finns i översta inlägget

Alltså scriptet fungerar fram till den.

Det kanske inte går att göra så här?

AGMedlem sedan mars 20001 229 inlägg
#3

Har du tänkt på att typerna tal inte innefattas av enkelsnuffar " ' "?
Finns vissa fält som jag tyker kan likna nummer.
Föresten själv skickar jag aldrig med value i en option, testa och ta bort det o testa sen, också.

Andreas

@ndersMedlem sedan juni 200026 914 inlägg
#4

skriv ut den färdiga sql-frågan med response.write så är det lättare att se vad som strular.

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

tapaniMedlem sedan apr. 200093 inlägg
#5

@nders:

Det där med att skriva ut SQL-frågan har jag aldrig riktigt fattat?

Var sätter jag inte respons.write?

AG:

Tja, som sagt allt fungerar fram till
<option>-delen.

[Redigerat av tapani den 14 jan 2001]

@ndersMedlem sedan juni 200026 914 inlägg
#6

för att man skall kunna se den färdiga sql-frågan, och därmed kunna se om det är någon av de variabler du använt som saknar värden, så måste man använda response.write för att skriva ut den till browsern.

response.write SQL skall skrivas efter det att du skapat frågan, men före du kör execute.

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

tapaniMedlem sedan apr. 200093 inlägg
#7

Ahh, provar det ikväll.. Tack.

Det är ingen som har provat Update med
en <option>-fråga?

tapaniMedlem sedan apr. 200093 inlägg
#8

Så här ser det ut då:

Update Kund SET Foretag = 'Test AB', PersonNr = '123456-1234', FNamn = 'Test', ENamn = 'Testing', Adress = 'Testgatan 12', PostNr = '12345', Ort = 'Teststad', Tel = '1234-123456', Fax = '4321-654321', Email = 'a@b.com', Datum = '20010402', Langd = '180', Vikt = '80', FaktNr = '0', Platser = '1', Note = 'Testar igen', Kurstyp = 'FFord' Where KundId = 31
Microsoft JET Database Engine error '80040e14'

Syntax error in UPDATE statement.

/bokn/edit2.asp, line 7

Tar jag bort den sista där 'Kurstyp' så fungerar Update utan problem.

[Redigerat av tapani den 15 jan 2001]

emissionMedlem sedan dec. 19996 095 inlägg
#9

Du ska inte ha fnuttar runt tal, och # runt datum.

[r]...men det kanske du inte har?[/r]

[Redigerat av emission den 15 jan 2001]

tapaniMedlem sedan apr. 200093 inlägg
#10

Använder endast text förutom på primärnyckeln..

Fungerar som sagt om jag tar bort sista Update 'Kurstyp'

tapaniMedlem sedan apr. 200093 inlägg
#11

Då tolkar jag det som om ingen vet eller att det helt enkelt inte funkar att ha en <option value="xxx">xxx</option> i en Update. Eller så har ni inte tid med mig :)

Någon måste väl ha gjort det någon gång.

Desperat ;)

@ndersMedlem sedan juni 200026 914 inlägg
#12

helt enkelt inte funkar att ha en <option value="xxx">xxx</option> i en Update

det spelar ingen som helst roll varfrån du får dina værden nær du skapar din sql-query.

din sql-fråga tycker jag ser helt korrekt ut, nu nær du berættat før oss om fælttyperna.

det jag skulle vilja be dig gøra ær att testa att stælla frågan i access direkt och se vad som hænder.

mvh

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

tapaniMedlem sedan apr. 200093 inlägg
#13

Direkt?

Du menar i själva rapportdelen då.

Ska kolla det.

tapaniMedlem sedan apr. 200093 inlägg
#14

@nders:

Tja det där med att köra frågan i Access klarade jag inte av MEN jag provade att korta av frågan genom att
börja om och prova steg för steg tills
problemet uppstod.

Använde endast halva koden och la in Kurstyp = '" & Request.Form("kurstyp") & "'

då funkade det ??? fattar inget här..

I alla fall förra gången så började jag
om från början och la in ett i taget
för att se hur långt jag kom innan det dog... Jag kom ända till just Kurstyp = '" & Request.Form("kurstyp") & "'
(se översta inlägget)

När jag nu skulle gå baklänges och prova så fungerade det inte alls efter att jag tog bort några så jag började om och provade ett efter ett och sen petade jag in Kurstyp = '" & Request.Form("kurstyp") & "' tidigare och nu fungerar det...

Så nu är frågan:

Kan man inte ha hur mycket text som helst på en rad? Eller klarar den inte
av att uppdatera så många poster på en gång?

För allt som står på denna rad
SQL = SQL & "Foretag = '" bla bla bla

Tills Conect.Execute SQL
är på en rad..

tapaniMedlem sedan apr. 200093 inlägg
#15

Nu funkar det *yeah* äntligen :)

Måste ha missat en ' eller " eller vänt på dem någonstans..

Råkade nämligen göra det nu när jag testade och fick fram felet igen.

Sen var jag tvungen att ändra på Note i dabasen för den ville inte alls längre.

Note kanske används som uttryck? vad vet jag..

Tack till alla som lagt ner tid i det här..

Genererad på 378 ms · cache AV · v20260730165559-full.f96bc7eb