2015-12-24 57 views
1

我要檢查文件是否存在使用SQL Server Web服務器上一個Web服務器存在。檢查文件是否使用SQL Server

我已經嘗試了xp_cmdshell的DIR。但它只適用於本地文件。

請讓我知道如何做到這一點。

在此先感謝。

+0

SQL Server聽起來不像這個工作的最佳工具。也許如果你提供一些背景信息,我們可以幫助你找到一個可行的解決方案。 –

+0

沒有與擴展無論是從巴紐,JPG格式,或.gif在Web服務器上的圖像文件。我要檢查該文件具有擴展名保存在數據庫表的路徑。 – Gaurav

+0

對於UNC路徑,Dir應該可以正常工作,假設用於運行SQL Server的用戶帳戶可以訪問該目錄,但是您可能應該在數據庫之外執行此操作 –

回答

1

搜索了幾天之後,我發現以下效果很好: -

當您必須將文件(如BCP結果)或備份放入遠程驅動器時,只需將該驅動器映射到窗口中即可工作中,必須在SQL Server上被映射到!,要做到這一點,嘗試這樣的:

EXEC xp_cmdshell的淨使用號碼:\ \服務器\文件夾\文件夾\文件夾\ /域\登錄/密碼「

參考: https://social.msdn.microsoft.com/Forums/en-US/6eca2d62-eb86-4f23-9b86-6f917017f50c/bcp-utility-via-xpcmdshell-and-network-drive?forum=sqlsecurity

0

不能與任何用戶訪問,意味着同時SQLSERVER訪問的目錄,你必須只使用具有目錄的權利和您的SQLSERVER服務在用戶運行該用戶。你可以通過網絡訪問你的計算機的所有資源(即\ yourname \ sharablefolder),但不能通過網絡訪問你的計算機的所有資源,但不能通過Network Service或'本地服務'用戶(其中​​sqlserver服務運行默認)訪問網絡中的可共享文件夾。

任一備份resore:http://www.sqlservercentral.com/Forums/Topic631787-146-1.aspx

或執行命令:

http://www.sqlservercentral.com/Forums/Topic808580-359-1.aspx

how can i access a file/folder over network through XP_CMDSHELL in sql server 2008?

https://www.simple-talk.com/community/forums/thread/72262.aspx

https://social.msdn.microsoft.com/forums/sqlserver/en-US/c5ce5e21-17e7-4763-ba68-d3bb7dad213f/access-denied-on-xpcmdshell-with-certain-folders