ورود

View Full Version : باز کردن و خواندن از فایل در توابع sql



aminkeshani
یک شنبه 21 فروردین 1390, 08:35 صبح
با سلام خدمت دوستان

من می خواستم داخل توابع sql یک فایل(بیشتر فایل text) را باز کنم و اطلاعات داخل اونو بریزم توی یه متغیر متنی ولی نمی دونم باید چطور انجام بدم.
دوستان اگه نظری دارن بفرمایند تا استفاده کنیم

با تشکر

محمد سلیم آبادی
دوشنبه 22 فروردین 1390, 00:01 صبح
سلام،
بایستی با xp_cmdshell بتونید محتویات یک فایل متنی رو داخل یک متغیر برزید.
اینم برای مثال:

--In Management Studio connect to a component of SQL Server.
--In Object Explorer, right-click the server, and then click Facets.
--In the View Facets dialog box, expand the Facet list, and select
--the Surface Area Configuration, then turn true XPCmdShellEnabled

SET NOCOUNT ON;

--Create Text File
DECLARE @list VARCHAR(1000) = 'AROUT, ANTON, TOMSP',
@command VARCHAR(1000);
SET @command = 'echo ' + @list + '>>c:\test.txt';
EXECUTE xp_cmdshell 'del c:\test.txt';
EXECUTE xp_cmdshell @command;
GO

aminkeshani
دوشنبه 22 فروردین 1390, 10:22 صبح
سلام و با تشکر از پاسخ خوبتون

می خواستم بدونم لیست دستورات قابل اجرا با این دستور را کجا می تونم پیدا کنم،مثلا دستور همون خواندن از فایل
با تشکر از وستان عزیز

محمد سلیم آبادی
دوشنبه 22 فروردین 1390, 14:11 عصر
اینا فرامین سیستم عامل DOS هست.
Command Prompt رو باز کنید و تایپ کنید Help، لیست تمام فرامین به نمایش در میاد

khorsandreza
جمعه 13 دی 1392, 12:12 عصر
سلام،
بایستی با xp_cmdshell بتونید محتویات یک فایل متنی رو داخل یک متغیر برزید.
اینم برای مثال:

--In Management Studio connect to a component of SQL Server.
--In Object Explorer, right-click the server, and then click Facets.
--In the View Facets dialog box, expand the Facet list, and select
--the Surface Area Configuration, then turn true XPCmdShellEnabled

SET NOCOUNT ON;

--Create Text File
DECLARE @list VARCHAR(1000) = 'AROUT, ANTON, TOMSP',
@command VARCHAR(1000);
SET @command = 'echo ' + @list + '>>c:\test.txt';
EXECUTE xp_cmdshell 'del c:\test.txt';
EXECUTE xp_cmdshell @command;
GO

سلام
هرچند این تاپیک خیلی وقته زده شده ولی
موقع استفاده از دستورات فوق اگر متن فارسی باشد فایل متنی تبدیل به کاراکترهای (اجق وجق:افسرده:) میشود البنه من نوع nvarchar را هم تست کردم راه کاری هست؟