[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