2015-06-08 61 views
2

我試圖在Access中自動執行一個過程,並且我希望自動執行的其中一個步驟是更改我的表中某些字段的索引設置。我需要這樣做來提高後續查詢的速度(查詢速度比索引速度快大約100倍)。更改索引設置訪問VBA

在任何情況下,假設我的表,叫「汽車」,看起來是這樣的:

ID Name     Character  
1  Paul Newman   Doc Hudson 
2  Larry the Cable Guy Mater 
3  Owen Wilson   McQueen 
4  Joe Ranft   Red 

我想用VBA來改變從「ID」和「性格」的索引設置「否」到「Yes(No Duplicates)」。

該表最初不存在。它是由查詢創建的,然後我需要索引表並在其上運行更多查詢。

+1

儘管存在這個任務的VBA解決方案,但我嚴重懷疑這個問題的實際價值。訪問表字段上的設置索引是一個鼠標點擊的事情(它具有出色的可視化QBE)。一旦完成,它永遠有效。那麼,VBA自動點擊鼠標有什麼意義呢?這是爲了複雜性而添加的複雜度級別。首先從數據建模開始,設置所有的表,索引,關係,然後根據需要添加VBA的東西 - 這是Access開發的正確順序。感謝和問候, –

+0

是的,我明白了。正如我所說的 - 不要通過VBA動態創建表格,手動創建它(MS Access具有出色的可視化工具),然後更新數據(例如使用VBA cmd。命令)。這是一種比刪除Table更簡單的方法,然後通過VBA重新創建它(例如,查詢DELETE * FROM [THAT_TABLE]完成這項工作)而不是其他方式。最好的問候, –

+0

這是一些奇怪的汽車 - 不知道在這個星球的這一側。 – Gustav

回答

2

我的解決辦法是簡單地執行這兩個SQL語句:

CREATE UNIQUE INDEX Index1 ON Cars (ID) 
CREATE UNIQUE INDEX Index2 ON Cars (Character) 

該訣竅。這是一個簡單的解決方案。