2011-05-30 121 views
1

我有一個包含三個表的訪問數據庫後端。我已將前端分配給多個用戶。這是一個非常簡單的數據庫,功能很少。我需要每小時將文件中的某些行導入數據庫中的某個表中。我想知道什麼是自動執行此過程的最佳方法,以便我可以每小時運行一次。我需要它運行在後臺作爲一種服務。你能告訴我你將如何做到這一點?ms-access:使用vba/sql重複進程

+0

用戶使用哪些操作系統? Unix的cron作業效果很好。 – Randy 2011-05-30 20:27:47

+0

@randy其窗口 – 2011-05-30 20:29:33

回答

4

你可以有例如:

  • 所有必要的代碼來運行導入PROC
  • 包含命令行(S),將運行該MS-訪問一個BAT文件中的MS-訪問文件文件與所有請求的參數。檢查ms-access命令行參數以查看可用選項。
  • 任務調度服務軟件啓動BAT文件:根據任務調度器和命令行發送,你甚至可以避開BAT文件步
+0

謝謝,這個過程是否能夠關閉訪問? – 2011-05-30 21:09:43

+2

不要忘了在你的訪問代碼中有一個'quit'行... – 2011-05-30 21:11:57

+0

那麼完整的語法可能是'application.quit'。請在MS Access幫助中查看 – 2011-05-30 21:28:16

4

如果你想要做的就是運行一些查詢,我不會通過自動化所有Access來實現這一點,而是通過編寫一個使用DAO直接執行SQL的VBScript。這是一種更有效的方法,並且可以在沒有控制檯登錄的情況下運行(完全訪問可能需要或可能不需要由任務調度程序運行)。

+0

它需要完整的訪問權限,如果我還需要執行RunImportorExport的事情 – 2011-05-31 14:48:13

+0

要使用TransferText/TransferDatabase,您需要完整的Access。但是,您可以使用SQL來代替IN子句以及指定數據源和目標的連接字符串,並且它僅適用於DAO/Jet。你可能不得不用連接字符串來擺弄一下(我通常會創建一個鏈接表,然後將其複製到SQL語句中)。 – 2011-06-02 19:49:43