[SQLSERVER] Kiểm tra file có tồn tại trong thư mục hệ thống
Bài viết hôm nay, mình sẽ tiếp tục hướng dẫn các bạn cách tạo một function để kiểm tra file có tồn tại trong thư mục sqlserver . Vd: các bạn có một bảng table chứa tên tập tin và đường dẫn, và công việc của bạn là muốn kiểm tra file đó có tồn tại trên ...
Bài viết hôm nay, mình sẽ tiếp tục hướng dẫn các bạn cách tạo một function để kiểm tra file có tồn tại trong thư mục sqlserver.
Vd: các bạn có một bảng table chứa tên tập tin và đường dẫn, và công việc của bạn là muốn kiểm tra file đó có tồn tại trên hệ thống sqlserver không.
Đầu tiên, các bạn tạo cho mình một function với tên dbo.fc_FileExists với tham số truyền vào là đường dẫn đến file thư mục.
CREATE FUNCTION dbo.fc_FileExists(@path varchar(8000))
RETURNS BIT
AS
BEGIN
DECLARE @result INT
EXEC master.dbo.xp_fileexist @path, @result OUTPUT
RETURN cast(@result as bit)
END;
GO
Sau khi các bạn chạy hàm fc_FileExists nếu file tồn tại sẽ trả về giá trị 1, và ngược lại trả về giá trị 0.
select dbo.fc_FileExists('C:mywork ech-recipes.rar'); ----- 1 (file có tồn tại)
select dbo.fc_FileExists('C:myworkarfi.mp3'); ----- 0 (file không tồn tại trong hệ thống)
Hướng dẫn sử dụng, bây giờ mình sẽ tạo một bảng table với tên filelist
Create table filelist ( fileno int, filename varchar(max) );
Và insert dữ liệu vào bảng filelist
Insert into filelist values (1, 'C:mywork ech-recipes.rar'); Insert into filelist VALUES (2, 'C:myworkarfi.mp3');
=> Và bạn sẽ truy vấn như sau để kiểm tra
Select fileno,
filename,
dbo.fc_FileExists(filename) as IsFileExists
From filelist;
=> Kết quả trả về khi thực hiện câu lệnh trên

HAPPY CODING ![]()