首頁 > 資料庫 > mysql教程 > 如何驗證表中每一行的檔案是否存在於 SQL Server 中?

如何驗證表中每一行的檔案是否存在於 SQL Server 中?

Linda Hamilton
發布: 2025-01-06 02:33:40
原創
363 人瀏覽過

How Can I Verify File Existence in SQL Server for Each Row in a Table?

驗證SQL Server 中的檔案是否存在

問題陳述

問題陳述

問題陳述

解決方案
CREATE FUNCTION dbo.fn_FileExists(@path varchar(512))
RETURNS BIT
AS
BEGIN
     DECLARE @result INT
     EXEC master.dbo.xp_fileexist @path, @result OUTPUT
     RETURN cast(@result as bit)
END;
GO
登入後複製

為了實現這一目標,我們可以使用 master.dbo.xp_fileexist 擴充儲存程序來檢查指定檔案是否存在。但是,要將此技術應用於表,需要自訂函數。

自訂函數

dbo.fn_FileExists(filepath)
登入後複製

新增計算列

編輯表以新增名為 IsExists的計算列,其中表達式:

SELECT * FROM dbo.MyTable where IsExists = 1
登入後複製

用法

現在,您可以簡單地選擇已有檔案的記錄:

select id, filename, dbo.fn_FileExists(filename) as IsExists
from dbo.MyTable
登入後複製

替代用法(計算列之外)

在外部使用函數計算列:

故障排除如果函數對於已知文件返回0,請檢查資料夾權限並確保 SQL Server 帳戶具有唯讀存取權限。此外,將「網路服務」帳戶新增至資料夾安全性設定以授予存取權限。

以上是如何驗證表中每一行的檔案是否存在於 SQL Server 中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板