簡體   English   中英

從 MS Access 在 SQL Server 中使用截斷

[英]Using Truncate in SQL Server from MS Access

我在這個問題上花了幾天時間,主要研究和大量反復試驗試圖找到解決方案。 這是我所擁有的以及我需要做的工作:

  1. SQL Server 2008 中的 Sproc 調用:TRUNCATE TABLE tablename(30,000 條記錄)
  2. MS Access (2010) 客戶端
  3. 使用 SQLCMD 實用程序調用存儲過程的批處理文件

在我的 Access 客戶端中,我使用 vba/Shell() 方法來調用批處理文件。 然后批處理文件使用 SQLCMD 連接到 SQL Server 並調用 SPROC。

如果我直接從我的機器上單擊批處理文件,它可以完美運行,最多 2 秒。 如果我使用 Shell() 方法從 Access 中運行批處理文件,它似乎將 SPROC 中的 TRUNCATE 視為 DELETE 而不是 TRUNCATE。 它閑置了幾分鍾並超時,沒有記錄被刪除。

如果我在只有幾千條記錄的表上做同樣的事情,它會成功,大約 5 秒。

我知道,“不要將 Access 用作客戶端”! 我從非 IT 繼承了這個應用程序,所以我必須讓它工作,沒有資金來重新設計它。

我已經很久沒有在這里發帖了,所以希望我遵循協議,

感謝您提前提供任何潛在的解決方案,

您是否嘗試在調用 sproc 的 SQL Server 代理中設置按需作業? 然后,您可以使用 t-sql 命令運行該作業。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM