/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Sletning af flere poster på samme tid.
Fra : Kasper Klattrup


Dato : 12-02-05 14:24

Jeg arbejder udelukkende i functions med denne side fordi jeg
mener det er nemmest så jeg paster lige hele min delete function
til jer.

>-------------------------------------------------------

<%
Function del()

Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("../db/consider.mdb")
Conn.Open DSN

If request.querystring("prev") = "Comments" Then
   strSQL = "Delete from " & request.querystring("tabel") & " where
nyhed = " & request.querystring("del")
Else
   strSQL = "Delete from " & request.querystring("tabel") & " where
Id = " & request.querystring("del")
End If
Conn.Execute(strSQL)

Conn.Close
Set Conn = Nothing

If request.querystring("prev") = "Home" Then
   response.redirect("default.asp?page=Del&del=" &
request.querystring("del") & "&tabel=comments&prev=Comments")
ElseIf request.querystring("prev") = "Comments" Then
   response.redirect("default.asp?page=Home")
Else
   response.redirect("default.asp?page=" &
request.querystring("prev") & "")
End If

End Function
%>

>-------------------------------------------------------

Den virker fint til at slette alt muligt andet. Det eneste den ik
vil være med til er at slette alle de comments der er skrevet.
Der melder den ud med fejlen:

>Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

>[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in
>criteria expression.

>/consider/code.asp, line 1732

Er der nogen der kan hjælpe mig lidt her?

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
NoMoreSpam (12-02-2005)
Kommentar
Fra : NoMoreSpam


Dato : 12-02-05 21:48

"Kasper Klattrup"

> strSQL = "Delete from " & request.querystring("tabel") & " where
> Id = " & request.querystring("del")

> Den virker fint til at slette alt muligt andet. Det eneste den ik
> vil være med til er at slette alle de comments der er skrevet.

Hvis du vil slette mere end een ting skal det fremgå af din SQLsætning

Delete from " & request.querystring("tabel") & " where
Id = " & request.querystring("del1") or Id = " & request.querystring("del2")

Alle de ID du skal slette skal altså med i WHERE delen. Hvis de bliver
overført til funktionen som en kommasepareret streng f.eks "12,234,56"
kan du bruge SPLIT() til at opdele strengen.
Så spørgsmålet lyder: Når du overfører mere end en værdi til funktionen
hvordan sker det så ??

--
Med venlig hilsen
Tom Jensen

Læs mere om databaser og asp her:
http://www.FFSoft.dk






Kasper Klattrup (13-02-2005)
Kommentar
Fra : Kasper Klattrup


Dato : 13-02-05 10:41

> Hvis du vil slette mere end een ting skal det fremgå af din SQLsætning
>
> Delete from " & request.querystring("tabel") & " where
> Id = " & request.querystring("del1") or Id = " & request.querystring("del2")
>
> Alle de ID du skal slette skal altså med i WHERE delen. Hvis de bliver
> overført til funktionen som en kommasepareret streng f.eks "12,234,56"
> kan du bruge SPLIT() til at opdele strengen.
> Så spørgsmålet lyder: Når du overfører mere end en værdi til funktionen
> hvordan sker det så ??
>
> --
> Med venlig hilsen
> Tom Jensen

Tak for dit bidrag men det der hjælper desværre ik når det er et comment system
og den skal slette alle de comments der hører til en bestemt nyhed når den ene
nyhed slettes og jeg kender ik ID'erne. Jeg ved kun at det felt der hedder
"nyhed" i databasen indeholder det tal den pågældende nyhed har som "id".

Derfor er min delete function lavet som den er. Jeg må dog indrømme at jeg
virkelig ikke forstår hvorfor det ikke virker bare fordi den skal slette en
flok felter og ikke skal slette vha. den primære nøgle(ID feltet) i databasen?


--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

NoMoreSpam (13-02-2005)
Kommentar
Fra : NoMoreSpam


Dato : 13-02-05 18:46

> Tak for dit bidrag men det der hjælper desværre ik når det er et comment
system
> og den skal slette alle de comments der hører til en bestemt nyhed når den
ene
> nyhed slettes og jeg kender ik ID'erne. Jeg ved kun at det felt der hedder
> "nyhed" i databasen indeholder det tal den pågældende nyhed har som "id".
>
> Derfor er min delete function lavet som den er. Jeg må dog indrømme at jeg
> virkelig ikke forstår hvorfor det ikke virker bare fordi den skal slette
en
> flok felter og ikke skal slette vha. den primære nøgle(ID feltet) i
databasen?

Hvordan ved comments at de hører til en og kun en ganske bestemt nyhed ??
Der ligger løsningen på problemet. Vil du fortælle lidt mere om hvad dine
tabeller
hedder og hvordan de er relateret til hinanden ??

--
Med venlig hilsen
Tom Jensen

Læs mere om databaser og asp her:
http://www.FFSoft.dk



Kasper Klattrup (13-02-2005)
Kommentar
Fra : Kasper Klattrup


Dato : 13-02-05 22:50

> Hvordan ved comments at de hører til en og kun en ganske bestemt nyhed ??
> Der ligger løsningen på problemet. Vil du fortælle lidt mere om hvad dine
> tabeller
> hedder og hvordan de er relateret til hinanden ??

Jeg har i databasen lavet et felt der hedder "nyhed" hvori ID'et fra den
nyhed de hører til står.

Dvs. hvis der fx er 5 comments der hører til nyheden med ID 15 så står der
"15" i feltet "nyhed" ved de 5 comments.

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

NoMoreSpam (14-02-2005)
Kommentar
Fra : NoMoreSpam


Dato : 14-02-05 16:44

> > Hvordan ved comments at de hører til en og kun en ganske bestemt nyhed
??
> > Der ligger løsningen på problemet. Vil du fortælle lidt mere om hvad
dine
> > tabeller
> > hedder og hvordan de er relateret til hinanden ??
>
> Jeg har i databasen lavet et felt der hedder "nyhed" hvori ID'et fra den
> nyhed de hører til står.
>
> Dvs. hvis der fx er 5 comments der hører til nyheden med ID 15 så står der
> "15" i feltet "nyhed" ved de 5 comments.
>
Hej Kasper

Så kan du lave to forespørgsler; en der først sletter alle de comments
der er markeret 15 og bagefter en der sletter nyhed 15

Delete From tblComments where Nyhed = 15
Delete From tblNyhed where ID = 15

--
Med venlig hilsen
Tom Jensen

Læs mere om databaser og asp her:
http://www.FFSoft.dk



Lars Hoffmann (14-02-2005)
Kommentar
Fra : Lars Hoffmann


Dato : 14-02-05 18:20

NoMoreSpam wrote:

> Så kan du lave to forespørgsler; en der først sletter alle de comments
> der er markeret 15 og bagefter en der sletter nyhed 15
>
> Delete From tblComments where Nyhed = 15
> Delete From tblNyhed where ID = 15


Faktisk kan det gøre noget nemmere. Du relationerer i access de to tabeller
(højreklik->relationer). Derefter trækker du feltet nyhed fra tblComments
ovenin feltet id fra tblNyhed. Marker derefter "opdater i kaskade" og "slet i
kaskade".

Når du efterfølgende kører "Delete * From tblNyhed where ID = 15" vil de
tilhørrende kommentarer også blive slettet.
Med venlig hilsen
Lars Hoffmann

Jens Gyldenkærne Cla~ (12-02-2005)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 12-02-05 23:21

Kasper Klattrup skrev:

>>Microsoft OLE DB Provider for ODBC Drivers error '80040e07'
>
>>[Microsoft][ODBC Microsoft Access Driver] Data type mismatch
>>in criteria expression.
>
>>/consider/code.asp, line 1732

Standardsvar ved fejl i sql-kald:

   Udskriv den resulterende sql-sætning. Hver gang.

Se hvordan her (lidt nede i artiklen):
   <http://asp-faq.dk/article/?id=41>
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste