Avatar billede -sofus- Nybegynder
11. juli 2003 - 16:19 Der er 19 kommentarer og
1 løsning

Latterlig kode

Jeg har en lille kode som skal slette fra database.
Den virker ikke, og jeg får ingen fejlmeddelse.

<!-- #include file="string.inc" -->
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.open strBanner

Conn.Execute("DELETE FROM T_banner WHERE banner_ID = '" & Request.QueryString("bannerID") & " ' ")
%>
Avatar billede jessbonde Nybegynder
11. juli 2003 - 16:22 #1
DELETE * FROM
Avatar billede hossein Nybegynder
11. juli 2003 - 16:26 #2
hvis bannerID er tal så skal du ikke ha ':
Conn.Execute("DELETE FROM T_banner WHERE banner_ID = " & Request.QueryString("bannerID") & "")
Avatar billede -sofus- Nybegynder
11. juli 2003 - 16:28 #3
virker ikke
Avatar billede jessbonde Nybegynder
11. juli 2003 - 16:31 #4
Har du prøvet at udskrive din SQL uden at execute ved submit?
Hvordan ser den ud?
Avatar billede hossein Nybegynder
11. juli 2003 - 16:31 #5
set rs=Conn.Execute("DELETE FROM T_banner WHERE banner_ID = " & Request.QueryString("bannerID")& "")
Avatar billede jpvj Nybegynder
11. juli 2003 - 16:33 #6
Prøv lige at udskrive din streng før du kalder Conn.Execute:

Altså:
SQLstr = "DELETE FROM T_banner WHERE banner_ID = '" & Request.QueryString("bannerID") & " ' "
Response.Write(SQLStr)
Conn.Execute(SQLstr)

Så er løsningen nok umiddelbar.
Avatar billede jpvj Nybegynder
11. juli 2003 - 16:34 #7
hossein> Hvorfor appender du den tomme streng til sidst? Hvorfor skal resultatet lægges i rs?
Avatar billede hossein Nybegynder
11. juli 2003 - 16:35 #8
jpvj>> det var en fejl
Avatar billede eagleeye Praktikant
11. juli 2003 - 16:41 #9
Det er fordi du har et mellemrun før den sidste '  Så hvis du slætter banner_ID = 23 så forsøger du at slette 23(mellemrum)  '23 '  som ikke findes. Så prøv denne :


Conn.Execute("DELETE FROM T_banner WHERE banner_ID = '" & Request.QueryString("bannerID") & "'")
Avatar billede -sofus- Nybegynder
11. juli 2003 - 16:46 #10
virker stadig ikke
Avatar billede dta Nybegynder
11. juli 2003 - 17:11 #11
Hvad type felt er banner_ID? text eller tal. Hvis tal skal du ikke have '' omkring tallet.
Avatar billede -sofus- Nybegynder
11. juli 2003 - 17:15 #12
Det er et tal
Avatar billede netro Nybegynder
11. juli 2003 - 17:18 #13
For mig at se vil den bare se sådan ud. Hvis det ikke er Access, så fjern *.

Conn.Execute("DELETE * FROM T_banner WHERE banner_ID = " & Request.QueryString("bannerID"))
Avatar billede -sofus- Nybegynder
11. juli 2003 - 17:36 #14
Virker stadig ikke
Avatar billede -sofus- Nybegynder
11. juli 2003 - 17:41 #15
nu virker det.

fejlen lå i jeg manglede en _ i  Request.QueryString
Avatar billede jpvj Nybegynder
12. juli 2003 - 09:07 #16
Dvs. hvis du havde gjort som jeg foreslot, at udskrive strengen, så var svaret (næsten) umiddelbart....

Er det ikke points værd?
Avatar billede -sofus- Nybegynder
12. juli 2003 - 10:32 #17
ja og nej. fejlen har ligget et andet sted en der hvor du har forslået.

dvs at der er ikke nogen som har spottet fejlen. Ikke fordi jeg er nærig, men hvis der skal uddeles point så skal alle have lige mange.
Avatar billede netro Nybegynder
12. juli 2003 - 20:14 #18
Der er jo ingen, der har en menneskelig chance for at vide, hvad din querystring hedder. Det svarer til at spørge, hvorfor du ikke får mere for din brugte bil, når vi ikke ved, hvad det er for en.

Jeg vil mene, at points'ne skal gå til hossein, da han var den første til at give dig den korrekte syntaks på dit statement - og dermed fremprovokere en fejl, fordi du henter en tom querystring.
Avatar billede -sofus- Nybegynder
12. juli 2003 - 22:13 #19
jpvj du for bare pointsne da du er den første med et svar.

Hvis der er flere som vil have point så sig til.

Men af princip er jeg modstander af at give point, når man ikke har fået det rigtige svar.
Avatar billede hossein Nybegynder
13. juli 2003 - 00:57 #20
netro>> Tak for det!
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