ورود

View Full Version : اکسپورت اطلاعات جدول توسط BCP



hossein_h62
پنج شنبه 10 تیر 1389, 23:50 عصر
با سلام خدمت دوستان
با استفاده از پروسیجر زیر قصد دارم اطلاعات جدول رو در یک فایل متنی ذخیره کنم ولی جواب نمیده.لطفا اشکالش رو بفرمائید.



CREATE Procedure BCP_Text_File
(
@table varchar(100),
@FileName varchar(100)
)
as
If exists(Select * from information_Schema.tables where table_name=@table)
Begin
Declare @str varchar(1000)
set @str='Exec Master..xp_Cmdshell ''bcp "Select * from '+db_name()+'..'+@table+'" queryout "'+@FileName+'" -c'''
Exec(@str)
end
else
Select 'The table '+@table+' does not exist in the database'

AminSobati
جمعه 11 تیر 1389, 12:27 عصر
سلام دوست عزیزم،
چه پیغام خطایی دریافت میکنید؟

hossein_h62
جمعه 11 تیر 1389, 13:17 عصر
پیغام خطا نمیده ولی فایل مورد نظر که ایجاد میشه خالی هستش.
در ضمن تصویر Output بعد از اجرای پروسیجر رو ضمیمه کردم :



BCP copy out failed !


لطفا راهنمایی بفرمائید.
در ضمن آیا راه دیگه ای رو غیر این روش پیشنهاد میکنید؟؟

AminSobati
جمعه 11 تیر 1389, 13:42 عصر
اولا که پیغام خطا ناقص هست، باید Gird رو بزرگتر میکردین. ثانیا به نظر میرسه Syntax دستور BCP رو اشتباه استفاده میکنید. این یک مثال:



bcp "select * from mydb..mytable" queryout c:\textfile.txt -T -c

hossein_h62
سه شنبه 22 تیر 1389, 17:59 عصر
اولا که پیغام خطا ناقص هست، باید Gird رو بزرگتر میکردین. ثانیا به نظر میرسه Syntax دستور BCP رو اشتباه استفاده میکنید. این یک مثال:



bcp "select * from mydb..mytable" queryout c:\textfile.txt -T -c


سلام
این دستور جواب نمیده! کجای کار رو اشتباه انجام میدم ؟؟
دستورم اینه : (SQL 2000)



bcp "select * from MyTable" queryout c:\textfile.txt -T -c