2016-07-28 74 views
0

是否有可能清空我的數據庫中的每個表格?顯然有一種使用方法:MS Access:清空數據庫中的所有表格

CurrentDb.Execute "DELETE FROM Table1", dbFailOnError 

爲每個表。

但是,我必須爲每個表使用此代碼。如果有與Loop或與表名無關的解決方案,那將會很好。

回答

4

可以循環通所有本地表使用代碼

Dim tdf As TableDef 

For Each tdf In CurrentDb.TableDefs 
    If Left(tdf.Name, 4) <> "MSys" Then 
     CurrentDb.Execute "DELETE * FROM [" & tdf.Name & "]", dbFailOnError 
    End If 
Next 
End Sub 
+0

它的工作原理,但我得到了一個問題。一些表名包括「 - 」,例如「tblProducts-A」(我知道這個標題是愚蠢的 - .-)。這會導致語法錯誤。我該如何解決這個問題? – Flow74

+0

我以爲CurrentDb.Execute「Delete * FROM [」&tdf.Name],dbFailOnError會有所幫助。但它不... – Flow74

+0

是的,你是對的,忘了括號。編輯答案。 –