strul med Delete Between olika datum, SQL2000

Databaser & SQL

7 svar · 370 visningar · startad av G8

Medlem sedan jan. 20011 213 inlägg
Trådstart#1

varför funkar inte

Connection.Execute("DELETE FROM Visitors WHERE visitordate BETWEEN '"&startdate&"' AND '"&enddate&"'"),,128

?

Vill alltså ha bort alla records mellan valda datum

//G8

Medlem sedan juni 200032 967 inlägg
#2

Vad innehåller startdate och enddate?
På vilket sätt funkar det inte?

Medlem sedan jan. 20011 213 inlägg
#3

startdate: 5/17/2005 00:00:00
enddate: 5/17/2005 23:59:59

får inget felmeddelande, men den stoppar på connection.execute... fel nånstans måste det vara

Medlem sedan jan. 20011 213 inlägg
#4

Hmm, det funkar nu av någon anledning...

Vet inte riktigt varför det inte funkade innan...

Följdfråga, hur ska man göra för att ta reda på hur många records som raderas (nån count av nått slag), och om det inte finns några records som matchar datumen, visa ett felmeddelande?

//G8

Medlem sedan juni 200032 967 inlägg
#5
Connection.Execute("DELETE FROM Visitors WHERE visitordate BETWEEN '"&startdate&"' AND '"&enddate&"'"),[b]rows[/b],128
if rows = 0 then response.write "inget att radera"
Medlem sedan jan. 20011 213 inlägg
#6

Funkar fin fint,

en liten estetisk sak bara, rows returneras som '23' om man skriver ut värdet, finns det nått sätt att ta bort fnuttarna?

Testade med Cint(rows) men fick samma resultat...

Medlem sedan juni 200032 967 inlägg
#7

Hmm, det är konstigt. Det ska inte vara några apostrofer där. Gör du Cint() på något som innehåller apostrofer ska du få ett felmeddelande.

Hur ser din kod ut nu?

Medlem sedan jan. 20011 213 inlägg
#8

äh, det är jag som inte är med riktigt,

skrev ut det så här, '"&rows&"', istället för "&rows&"...

Tack snabeln, du rular!

639 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
514 ms — hämta tråd, inlägg och bilagor (db)
118 ms — ändringar (db)