PDA

View Full Version : سوال: اجرای فایل اس sql



mohsenebi
پنج شنبه 12 شهریور 1388, 15:03 عصر
سلام
من می خواستم فایلی مثل test.sql را از طریق vb.net اجرا کنم برای این کار باید چکار کنم

جایی خواندم که میشه از طریق ado اجراش کرد چطوری؟

با تشکر

IsFull()
پنج شنبه 12 شهریور 1388, 15:11 عصر
اگه این کار هم تو net. بشه پس sql server management stdio دیگه چی کارست؟من که تا به حال پیداش نکردم

بهنام بهمنی
شنبه 14 شهریور 1388, 11:14 صبح
پس از برقراري ارتباط با sql server مي توانيد query مورد نظر را به sp_executesql پاس داده و اين تابع آن query را اجرا خواهد کرد

http://msdn.microsoft.com/en-us/library/ms188001.aspx

http://msdn.microsoft.com/en-us/library/ms175170.aspx

محمد سلیم آبادی
شنبه 14 شهریور 1388, 12:50 عصر
سلام
من می خواستم فایلی مثل test.sql را از طریق vb‎.Net اجرا کنم برای این کار باید چکار کنم

جایی خواندم که میشه از طریق ado اجراش کرد چطوری؟

با تشکر

با استفاده از دستور xp_cmdshell می توانید فرامین ویندوز را اجرا کنید خروجی این پروسیجر هم سطرهایی از نوع text می باشند. ابتدا با دستور type متن فایل sql خود را در یک متغیر رشته ای ریخته سپس با کمک دستور execute آن را اجرا کنید.

برای اینکه راه حلی را که در ادامه قرار داده ام کاملا صحیح کار کند باید تمام دستورات فایل مذکور در یک خط قرار گرفته باشند.



/*Print 'It is just a test!' Print 'Using xo_cmsshell is really great'*/
declare @a table(s nvarchar(200))
declare @s nvarchar(200)
insert into @a
execute xp_cmdshell N'type c:\1.sql'
select @s=s from @a
execute (@s)
/*
It is just a test!
Using xo_cmsshell is really great*/