Servus!
Hab da noch ne Lösung gefunden, die jedoch nur dann Funktioniert, wenn du deine Tabellen alle mit tbl starten lässt.. und du auf die ADO Extensions 2.6 (2.5) for DDL and Security einen Verweis gesetzt hast...
tblSchuhe, tblHaus, tblZugriff, tblMember...
Dim cat as ADOX.Catalog
dim rs as adodb.recordset
Dim conn as new AdoDB.Connection
//Bei ner Access DB
conn.Open "Provider=Microsoft.Jet.OLEDB.3.51;" && _
"Data Source =" & App.Path & "\myDB.mdb","username","passwort"
Hierbei muss sich die Access mdb. Datei im selben Verzeichnis wie die vom VB Editor erzeugte exe Datei liegen
//Bei nem SQL Server
conn.Open "Provider=SQLOLEDB;USER ID = username;" &_
"Catalog=meineDB; Data Source=localhost;"
set cat = new ADOX.Catalog
set rs = new adodb.recordset
cat.activeConnection = con
with rs
.activeConnection = con
.Locktype = adLockOptimistic
.CursorType = adOpen
end with
dim i as Integer
i = 0
While (i < cat.Tables.count)
if left(cat.Tables(i).Name,3) = "tbl" then
rs.Open "Delete * FROM " & cat.Tables(i).Name
rs.close
end if
i = i + 1
Wend
set rs = nothing
...eine sehr unperformante Lösung... es wäre Besser, alle Tabellen einmalig zu erfassen und dann jeweils einen etwas "längeren" SQLString mittels eines RecordsetObjekts abzuschiessen...
Gruss Tom