Avatar billede vejbump Nybegynder
27. juni 2001 - 23:05 Der er 14 kommentarer og
2 løsninger

Fejlfind på UPDATE SQL

Halløjsovs der...
Jeg har en lille kode her og jeg vil give 90 point hvis der er en der gider at gå koden igennem for fejl.
Lige nu får jeg denne fejl når jeg køre siden: (Et objekt er obligatorisk: \'Conn\')
------------------------------------------------------
<%
if Request(\"ret\") = \"Ret Profil\" then

set strBruger = Request(\"BrugerNavn\")
set strMail = Request(\"Mail\")
set strNavn = Request(\"Navn\")
set strAlder = Request(\"Alder\")
set strKoen = Request(\"Koen\")
set strAdresse = Request(\"Adresse\")
set strLandsdel = Request(\"Landsdel\")
set strBy = Request(\"By\")
set strFoedselsdag = Request(\"Foedselsdag\")
set strFriText = Request(\"Fri_Text\")

retSQL = \"UPDATE Brugere SET Bruger=\'\" & strBruger & \"\', Mail=\'\" & strMail & \"\', Navn=\'\" & strNavn & \"\', Alder=\'\" & strAlder & \"\', Køn=\'\" & strKoen & \"\', Adresse=\'\" & strAdresse & \"\', Landsdel=\'\" & strLandsdel & \"\', By=\'\" & strBy & \"\', Fødselsdag=\'\" & strFoedselsdag & \"\', Fri_Text=\'\" & strFriText & \"\'\"
Conn.Execute (retSQL)
response.write \"<meta http-equiv=\'refresh\' content=\'0; url=profil.asp\' target=\'_self\'>\"
else
%>
------------------------------------------------------
Håber der er nogen der kan hjælpe...
/Vejbump
Avatar billede erikjacobsen Ekspert
27. juni 2001 - 23:07 #1
By er et reserveret ord. Brug et andet eller skriv [by]  (i Access)

Den med conn ved jeg ikke lige ...
Avatar billede zoidberg Nybegynder
27. juni 2001 - 23:08 #2
har du husket

set conn = server.createobject(\"ADODB.Connection\")
Avatar billede erikjacobsen Ekspert
27. juni 2001 - 23:08 #3
PS: du har vel lavet en connection?
Avatar billede netsrac Praktikant
27. juni 2001 - 23:18 #4
Når du får fejlen (Et objekt er obligatorisk: \'Conn\')
er det fordi du ikke har et objekt som hedder Conn ergo, har du ikke nogen connection string som set conn = server.createobject(\"ADODB.Connection\") samt en Conn.open \"bla bla\"

Avatar billede erikjacobsen Ekspert
27. juni 2001 - 23:20 #5
Og en ting mere. Du opdaterer alle dine brugere med mindre du har en
WHERE-del på. Er det du vil at opdatere en eksisterende, eller indsætte
en ny?
Avatar billede vejbump Nybegynder
27. juni 2001 - 23:52 #6
erikjacobsen > Pis. Jeg havde glemt at lave en connection. Det WHERE-delen kan du prøve at lave et eksempel? Det er første gang jeg arbejder med SQL UPDATE...
Avatar billede erikjacobsen Ekspert
28. juni 2001 - 00:14 #7
Mnjah, hvis jeg vil ændre et navn på en eksisterende kunde med id=11734 ville
jeg skrive

  update kundetabel set navn=\'Vej Bump\' where id=11734

Hvis jeg udelader where-delen får de 11733 andre kunder også dette navn.

Men er det en ny du vil indsætte?
Avatar billede vejbump Nybegynder
28. juni 2001 - 00:17 #8
erikjacobsen > Nej der en eksisterende jeg gerne vil opdatere.
Jeg har lavet nogle ændringer i koden.
--------------------------------------------------
<%
if Request(\"ret\") = \"Ret Profil\" then

set strBruger = Request(\"BrugerNavn\")
set strPass = Request(\"Pass\")
set strMail = Request(\"Mail\")
set strNavn = Request(\"Navn\")
set strAlder = Request(\"Alder\")
set strKoen = Request(\"Koen\")
set strAdresse = Request(\"Adresse\")
set strLandsdel = Request(\"Landsdel\")
set strBy = Request(\"sBy\")
set strFoedselsdag = Request(\"Foedselsdag\")
set strFriText = Request(\"Fri_Text\")

Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"config/db/config.mdb\") & \";UID=;PWD=;\"
retSQL = \"UPDATE Brugere SET Bruger=\'\" & strBruger & \"\', Pass=\'\" & strPass & \"\', Mail=\'\" & strMail & \"\', Navn=\'\" & strNavn & \"\', Alder=\'\" & strAlder & \"\', Køn=\'\" & strKoen & \"\', Adresse=\'\" & strAdresse & \"\', Landsdel=\'\" & strLandsdel & \"\', sBy=\'\" & strBy & \"\', Fødselsdagto=\'\" & strFoedselsdag & \"\', Fri_Text=\'\" & strFriText & \"\' Where ID = \'\" & Session(\"ID\") & \"\'\"
Conn.Execute (retSQL)
response.write \"<meta http-equiv=\'refresh\' content=\'0; url=profil.asp\' target=\'_self\'>\"
else
%>
--------------------------------------------------
Ser det rigtigt ud?
Avatar billede erikjacobsen Ekspert
28. juni 2001 - 00:22 #9
I ASP skal du ikke - ja du må faktisk ikke - have \'-er omkring felter,
der er erklærede som tal.

Måske er Alder og ID sådanne?
Avatar billede netsrac Praktikant
28. juni 2001 - 00:23 #10
erikjacobsen >> Skal vi ikke sige i Access må man ikke bruge \' om felter der er erklæret som tal.
Avatar billede erikjacobsen Ekspert
28. juni 2001 - 00:27 #11
Jow jow, det siger vi så ... ha ha ... det er lidt sent, og de begynder begge
med A - så i min alder er det nemt at tage fejl!
Avatar billede netsrac Praktikant
28. juni 2001 - 00:32 #12
:-)
Avatar billede vejbump Nybegynder
28. juni 2001 - 00:40 #13
OK here\'s the deal...
Det med at man ikke må bruge \' om felter der er erklæret som tal hjalp, det virker nu.

Men jeg kan ikke give nogen point så længe at der ikke er noget svar.
Skriv et eller andet \"svar\" så vil jeg give point...

Tusinde tak for hjælpen, i har sparet mig for mange timers arbejde og grå hår...
Avatar billede erikjacobsen Ekspert
28. juni 2001 - 09:03 #14
ok da - men vent nu lige på de andre!
Avatar billede netsrac Praktikant
28. juni 2001 - 11:46 #15
:-)
Avatar billede vejbump Nybegynder
28. juni 2001 - 15:57 #16
Hmmm. Jeg gav vist ikke point korrekt.
Undskyld...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester