Avatar billede moore Nybegynder
03. april 2002 - 14:05 Der er 18 kommentarer og
3 løsninger

update sætning problem

Hvad er der lige galt med denne her sætning

strSQLinsert =  "INSERT INTO Kunstner (Tekst) values ('" & Request.Form("textkunstner") & "') where ID =" & ID
response.write "<br>"
response.write strSQLinsert
objConn.execute(strSQLinsert)
response.write "Textfeltet er opdateret"
objConn.close
Set objConn = nothing

Jeg får fejlen..

INSERT INTO Kunstner (Tekst) values (Dette er en test') where ID =
Microsoft JET Database Engine fejl '80040e14'

Der mangler et semikolon (;) i slutningen af SQL-sætningen.

/cbdatabase/nyhjemmeside/insert/insert.asp, linje 23
03. april 2002 - 14:14 #1
strSQLinsert =  "INSERT INTO Kunstner (Tekst) values ('" & Request.Form("textkunstner") & "') where ID =" & ID;

Måske?
Avatar billede sone Nybegynder
03. april 2002 - 14:14 #2
Nej... Du mangler tallet ved ID (ID=xxxx)
Avatar billede moore Nybegynder
03. april 2002 - 14:14 #3
Tilføjelse.

Når den nu indsætter i DB'en. hvordan sikrer jeg mig så at når man i textareaet har trykket på "enter" at linieskiftet også kommer med i DB'en. ???
03. april 2002 - 14:14 #4
Undskyld læste forkert, glem det :)
Avatar billede moore Nybegynder
03. april 2002 - 14:15 #5
ID'et bliver hentet over via en request.querystring..
Og det bliver fint taget med over..
Har prøvet at skrive ID'et ud..
Avatar billede rou Nybegynder
03. april 2002 - 14:23 #6
Du kan ikke have en WHERE på en INSERT sætning. Du leder nok efter UPDATE istedet..

<%
strSQLInsert = "UPDATE kunstner SET tekst = '"& Request.Form("textkunstner)&"' WHERE id = "& id
%>
Avatar billede moore Nybegynder
03. april 2002 - 14:27 #7
rou > har prøvet din sætning. men den melder fejl at tegnet )' var ventet..

very mystisk.
Avatar billede moore Nybegynder
03. april 2002 - 14:31 #8
har fundet fejlen.. der manglede et " i textkunstner...
Men når jeg nu submitter siden så kan den ikke huske min request.querystring("ID")
Så ID er bare lige ""
Avatar billede rou Nybegynder
03. april 2002 - 22:18 #9
Så læg ID i et hidden field, og request den på den side.
Avatar billede moore Nybegynder
03. april 2002 - 22:50 #10
ok.kigger lige på det imorgen.
Men det med hidden fields... har jeg ikke så meget forstand på..
Ved hvordan man laver det, men ikke lige hvordan man bruger det så i praktisk forstand!!!..

Så hvis du har et ex.vil det bare være fedt..

Men som skrevet.. kigger på det imorgen...
Avatar billede curriculum Nybegynder
05. april 2002 - 11:51 #11
Prøv det her:

strSQLinsert =  "INSERT INTO Kunstner (Tekst) values ('" & Request.Form("textkunstner") & "') where ID =" & ID
Set ObjRs = objConn.execute(strSQLinsert)
response.write strSQLinsert
response.write "<br>"
response.write "Textfeltet er opdateret"
objConn.close
Set objConn = nothing

Curriculum
Avatar billede curriculum Nybegynder
05. april 2002 - 11:53 #12
Ellers prøv et virtuelt "gyldigt" tal istedet for ID værdi'et:
"& ID  -->    8"
Avatar billede moore Nybegynder
05. april 2002 - 12:30 #13
nope..

Jeg har prøvet at sætte ID=1 og så skriver den stadivæk at jeg mangler et semikolon  i slutningen af min SQL sætning..

Meget mystisk nu.. for ID'et kommer med.. jeg har også prøvet at sætte mit ID i en session for at sikre mig det kom med.. men det virkede heller ikke

Nu er det her gået over min forstand. *G*
Avatar billede curriculum Nybegynder
06. april 2002 - 15:26 #14
Ufff .. det havde jeg overset .. du kan kun bruge WHERE 'clause' i SELECT, UPDATE og DELETE SQL setninger .. måske er det dit problem ..

Curriculum
Avatar billede moore Nybegynder
06. april 2002 - 18:12 #15
ok..

Jeg har også lavet den om til

strSQLInsert = "UPDATE kunstner SET tekst = '"& Request.Form("textkunstner") &"' WHERE id =" & request.querystring("ID")

response.write "<br>"
response.write strSQLinsert
objConn.execute(strSQLinsert)

men får sq stadigvæk samme svar... Måske skal jeg bare helt droppe den og finde en som virker
Avatar billede moore Nybegynder
06. april 2002 - 18:13 #16
forresten.. kan det være fordi at feltet i DB'en TEKST er et notat felt??Det burde vel være lige meget
Avatar billede curriculum Nybegynder
06. april 2002 - 19:50 #17
Det gør forskel om kolonnen i DB er CHAR (String) eller INTEGER (int) .. ved int skal ingen anførelsetegn vedhæftes, medens de skal skal med i SQL forespørgslen om kolonnen i DB er CHAR (String).

Den request.querystring i WHERE 'clause' skulle måske være skiftet ud med Session .. kun et forslag.

Curriculum
Avatar billede moore Nybegynder
07. april 2002 - 09:45 #18
som sagt så er mit felt i min DB et notatfelt ... ved ikke om det er int eller string...???..

men hvis du har en email så kan jeg sende min DB + koden til dig..??
Avatar billede moore Nybegynder
07. april 2002 - 09:46 #19
eller hvis du har en FTP..
Avatar billede curriculum Nybegynder
07. april 2002 - 11:07 #20
Et notatfelt er et String felt.
Min e-mail er curriculum@ofir.dk, send venligst, så skal jeg prøve at finde fejlen.

Curriculum
Avatar billede moore Nybegynder
07. april 2002 - 11:10 #21
ok..du får det hele.. *S*
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