PDA

View Full Version : به دست آوردن حجم پوشه از طرییق ftp یا کوئری در دیتابیس



emad0418
یک شنبه 15 مرداد 1402, 22:15 عصر
من برنامه ای دارم که باید عکس ها را روی سرور ذخیره کند. برای این کار من عکس ها را از طریق FTP در سرور ذخیره می کنم. اما چون محدودیت حجمی برای کاربران گذاشته ام باید هر بار حجم فولدر FTP را چک کنم تا از حد مجاز بیشتر نشود. هنگامی که تعداد فایل ها افزایش می یابد، این یک مشکل می شود. به نظر شما بهتر است سایز پوشه را از FTP بگیرم یا در هنگام ذخیره تصاویر، حجم فایل را در دیتابیس ذخیره کنم و اندازه پوشه از طریق sql به دست بیاورم . با توجه به مصرف سخت افزار شامل cpu و ram کدام مورد مناسب تر و بهینه تر است

fakhravari
دوشنبه 16 مرداد 1402, 12:00 عصر
-- EXEC sp_configure 'show advanced options', 1;
-- RECONFIGURE;
-- EXEC sp_configure 'xp_cmdshell', 1;
-- RECONFIGURE;


DECLARE @cmd VARCHAR(1000);
DECLARE @folderPath VARCHAR(255) = 'C:\tt';
DECLARE @output TABLE (output VARCHAR(1000));


SET @cmd = 'dir "' + @folderPath + '"';


INSERT INTO @output
EXEC xp_cmdshell @cmd;


SELECT output
FROM @output
WHERE output LIKE '%File(s)%'
OR output LIKE '%Dir(s)%';

fakhravari
دوشنبه 16 مرداد 1402, 12:01 عصر
delete file

DECLARE @cmd VARCHAR(1000);
DECLARE @filePath VARCHAR(255) = 'C:\tt\tt.zip';
DECLARE @output TABLE (output VARCHAR(1000));


SET @cmd = 'del "' + @filePath + '"';


INSERT INTO @output
EXEC xp_cmdshell @cmd;


SELECT output
FROM @output;