Löschen
C.A
- vb-script
Hallo mal eine dumme Frage,
kann man den Inhalt eines Recordset ganz löschen ohne dass man jeden Datensatz extra löschen muss bis die Enterkennung(EOF)kommt
ich mach das garde so
Do While Not oRst.EOF
oRst.Delete
oRst.MoveNext
Loop
oRst.close
aber bei über 6000 Datensätzen dauert das unheimlich lange.
habt ihr eine Idee???
Danke!
Gruß
Corinna
Hi,
Do While Not oRst.EOF
oRst.Delete
oRst.MoveNext
Loop
oRst.closeaber bei über 6000 Datensätzen dauert das unheimlich lange.
sieht ganz gut aus, aber im Hintergrund wird eine Unmenge an SQL-Traffic generiert, darum die Langsamkeit.
habt ihr eine Idee???
Du bindest doch vermutlich den Recordset an ein SQL-Statement. Du kannst doch mit einer "SQL-Execute"-Methode ein trockenes DELETE in Auftrag geben. Du musst halt nur Deinen Recordset und die Datenbasis ein wenig verstehen.
BTW - wie lautet das SQL-Statement zum Fuellen des Recordsets?
Gruss,
Ludger
sieht ganz gut aus, aber im Hintergrund wird eine Unmenge an SQL-Traffic generiert, darum die Langsamkeit.
Das mit der Traffic habe ich mir auch gedacht aber sicher war ich mir nicht.
habt ihr eine Idee???
Du bindest doch vermutlich den Recordset an ein SQL-Statement. Du kannst doch mit einer "SQL-Execute"-Methode ein trockenes DELETE in Auftrag geben. Du musst halt nur Deinen Recordset und die Datenbasis ein wenig verstehen.
BTW - wie lautet das SQL-Statement zum Fuellen des Recordsets?
Das zum erstellen
SELECT *
FROM VIEW_EXCHANGE
WHERE (FADeaktiv = 'FF'
AND FDatumEdit > '"&s(0)&"'
OR ADatumEdit > '"&s(0)&"'
OR MDatumEdit > '"&s(0)&"'
OR FDatumNeu > '"&s(0)&"'
OR ADatumNeu > '"&s(0)&"'"
s(0) = ist die Variable wo drinnen steht wann das Skript zu letzten mal gestarrte wurde! Alles was drüber ist wird hochbeladen ist eine Monat vergangen wir ein Vollupdate gefahren
das ist zumm löschen
If Monat <> Month(Loeschen) Then
'Volllöschung 20.12.2004
sSQL="select * from """&strURL_Full&""""
sSQL=sSQL & " WHERE "
sSQL=sSQL & "(""http://schemas.microsoft.com/exchange/outlookmessageclass"" != 'IPM.Microsoft.FolderDesign.FormsDescription')"
WScript.StdOut.WriteLine("Abfrage für die Volllöschung!")
Else
'Teillöschung 20.12.2004
sSQL="select * from """&strURL_Full&""""
sSQL=sSQL & " WHERE "
sSQL=sSQL & "(""http://schemas.microsoft.com/exchange/outlookmessageclass"" != 'IPM.Microsoft.FolderDesign.FormsDescription')"
sSQL=sSQL & " AND ( "
sSQL=sSQL & WHEREAID
sSQL=sSQL & " ) "
WScript.StdOut.WriteLine("Abfrage für die Teillöschung!")
End If
Gruß
Corinna
Hi,
BTW - wie lautet das SQL-Statement zum Fuellen des Recordsets?
Das zum erstellenSELECT *
FROM VIEW_EXCHANGE
WHERE (FADeaktiv = 'FF'
AND FDatumEdit > '"&s(0)&"'
OR ADatumEdit > '"&s(0)&"'
OR MDatumEdit > '"&s(0)&"'
OR FDatumNeu > '"&s(0)&"'
OR ADatumNeu > '"&s(0)&"'"
das ist zumm löschen
sSQL="select * from """&strURL_Full&""""
sSQL=sSQL & " WHERE "
sSQL=sSQL
sSQL="select * from """&strURL_Full&""""
sSQL=sSQL & " WHERE "
sSQL=sSQL& "(""http://schemas.microsoft.com/exchange/outlookmessageclass"" != 'IPM.Microsoft.FolderDesign.FormsDescription')"
sSQL=sSQL & " AND ( "
sSQL=sSQL & WHEREAID
sSQL=sSQL & " ) "
Moment, der Recordset wird mit Datensaetzen der Sicht 'VIEW_EXCHANGE' gefuellt, die Loeschungen erfolgen aber in '&strURL_Full' ? Lasse Dir doch mal sSQL ausgeben und versuche dann das SELECT durch ein DELETE zu ersetzen. (Aber Vorsicht mit dem Loeschen!)
Gruss,
Ludger
Moment, der Recordset wird mit Datensaetzen der Sicht 'VIEW_EXCHANGE' gefuellt, die Loeschungen erfolgen aber in '&strURL_Full' ? Lasse Dir doch mal sSQL ausgeben und versuche dann das SELECT durch ein DELETE zu ersetzen. (Aber Vorsicht mit dem Loeschen!)
Genau ich möchte einfach die Daten vom Exchange Server löschen und die Datenbank soll außen vor bleiben.
Das mit dem löschen ist sonne Sache ich habe keine Lust die Datenbank abzuschießen.
Daran habe ich auch gedacht aber ich bin mir immer nicht sicher bin ich jetzt auf der Datenbank oder doch aufen Exchange Server.
Aber wenn ich einen Test Datensatz hochlade und den denn durch das Delete lösche weiß ich ja ob es klappt
Hi,
du musst doch aber wissen zu welcher Resource du die Verbindung hergestellt hast, die du gerade verwendest?
Ciao, Frank
Hi,
du musst doch aber wissen zu welcher Resource du die Verbindung hergestellt hast, die du gerade verwendest?
Na das weiß ich schon wie was und wo. Es ist für mich nur schwer andere Programmierer zu verstehen was sie mir mit dem Quellcode sagen wollten.
Gruß
Corinna
Hi,
Na das weiß ich schon wie was und wo. Es ist für mich nur schwer andere Programmierer zu verstehen was sie mir mit dem Quellcode sagen wollten.
Du kannst Dich ja revanchieren. ;-)
Gruss,
Ludger