2017-02-06 122 views

回答

0

考慮使用TableDefs集合,其中您通過項目迭代和有條件地刪除或創建使用代碼通過相同的DDL SQL語句。

Dim db As Database 
Dim tbldef As TableDef 

Set db = CurrentDb 

For each tbldef in db.TableDefs 
    If tbldef.Name = "TableName" Then 
     db.Execute "DROP TABLE " & tbldef.Name, dbFailOnError 
    End if 
Next tbldef 

db.Execute "CREATE TABLE TableName (...rest of SQL...);", dbFailOnError  

' UNINITIALIZE OBJECTS 
Set tbldef = Nothing 
Set db = Nothing 
+0

這工作完美!謝謝。 – user1688194

1

這樣做比上面的代碼要簡單得多。

On Error Resume Next 
    currentdb.execute "DROP TABLE TABLENAME;" 
On Error Goto 0 

這樣做是試圖刪除表並跳過如果由於表不存在。只有3條線路,運行速度更快。

相關問題