Avatar billede winkill Nybegynder
27. november 1999 - 00:26 Der er 9 kommentarer og
2 løsninger

Mdb - Slet en række

Hvordan sletter man en række i en Mdb??

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.open Connection
Sql = "SELECT * FROM users WHERE (UserId = " & uId & ")"
rs = Conn.Execute(Sql)

Så er han valgt, right?! Nu skal han dø, men hvordan ???
Avatar billede flemming Nybegynder
27. november 1999 - 00:55 #1
' Slet Mr. uId
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.open Connection
Sql = "DELETE * FROM users WHERE (UserId = " & uId & ")"
Conn.Execute(Sql)
Conn.Close
Set Conn = Nothing
Avatar billede winkill Nybegynder
27. november 1999 - 01:38 #2
Det resulterer i:

Too few parameters. Expected 1

i denne linie:

rs = Conn.Execute(Sql)
Avatar billede uffenielsen Nybegynder
27. november 1999 - 07:11 #3
Sql = "DELETE * FROM users WHERE UserId = " & uId
response.write Sql

Så kan du se hvad der går galt. Formodentlig er UserId tom.

Mvh.
Uffe
Avatar billede mlykke Nybegynder
27. november 1999 - 08:17 #4
Hvis den select du har lavet vrker...så virker den flemming har lavet også...de er nøjagtig ens bortset fra at hans sletter og det gør din ikke....
Avatar billede uffenielsen Nybegynder
27. november 1999 - 09:08 #5
Ja tak, det er jeg med på.
Det blot så WinKill kunne se hvad hans sql streng rent faktisk indeholder.
Selvfølgelig skal response.write udskiftes med Conn.Execute(sql) når fejlen er fundet.
Avatar billede mlykke Nybegynder
27. november 1999 - 10:18 #6
det var nu et svar til det winkill sagde....og ikke dig ;)
Avatar billede uffenielsen Nybegynder
27. november 1999 - 13:13 #7
Oki...sorry.. :-)

Avatar billede s Nybegynder
27. november 1999 - 23:30 #8
Det er galt... sandsyneligvis er UserID et tekst-felt i databasen og ikke et tal.
Derfor skal det se sådan ud:


Set Connection = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("Dindatabase.mdb")
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.open Connection
Sql = "DELECT * FROM users WHERE UserId = '" & uID & "'"
Conn.execute( Sql )
Conn.close
Set Conn = Nothing
Avatar billede Slettet bruger
28. november 1999 - 11:16 #9
her er en hel side til dig......
Her skal du bare trykke på et link, så sletter du den valgte...

------
<%
Set Conn = Server.CreateObject("ADODB.Connection")
conn.Open "DBQ="&(Server.MapPath(".")) &"\mailing.mdb; DefaultDir=DBQ="&(Server.MapPath(".")) &"\;Driver={Microsoft Access Driver (*.mdb)};"
%>
<!doctype html public "-//ietf//dtd html//en//3.0">
<html>
<head><title> Administrationen</title>

</head>
<body background="../images/bgmain.gif" text="#FFFFFF" bgcolor="#000000">
<basefont  face="Arial" size="2" >

<!- Her starter siden -><br>
<br>

<%

if request("mode") = "slet" then
SQL = "DELETE FROM mailingliste where id ="& request("ID")
conn.execute (SQL)
end if %>

<TABLE>
 

<%
SQL = "SELECT * from mailingliste"
set slet = conn.execute( SQL )
do while not slet.eof
on error resume next %>
  <TR>
    <TD>
        <FONT FACE="Arial" SIZE="4" COLOR="#C0C0C0">
      <A HREF="del.asp?id=<% = slet("ID") %>&mode=slet">Slet</A></font>
    </TD>
    <TD>
        <FONT FACE="Arial" SIZE="3" COLOR="#C0C0C0">
    <i>Fra  <% = slet("Navn") %>, med email: <% = slet("Email") %></i>
        </FONT>
    </TD>

  </TR>
<%
slet.movenext
loop %>
</TABLE>   


</body>
</html>
--

-backSlash.dk
Avatar billede winkill Nybegynder
28. november 1999 - 22:35 #10
Well, jeg brugte flemmings Sql string som udgangspunkt, men som S skrev var UserId en String og ikke en Integer, derfor virkede det med ' i stedet for ().

Uffenielsen, UserId indeholdt brugernavnet, det var ikke en tom string. Jeg havde allerede prøvet med UserId = "UserFunkyName" i den forige linie.

Backslash.dk, sorry, jeg tog svarene oppefra og nedefter.
Avatar billede Slettet bruger
29. november 1999 - 08:17 #11
Det er bare helt iorden..*ss*
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