לכידת פלט פרוצדורה (2)

12/03/2011

אין תגובות

בפוסט קודם הראתי כיצד ללכוד פלט פרוצדורה, כשהדגש היה על הפלט המופנה ללשונית ה-Messages (בתחתית צילום המסך):

clip_image002

את הפלט המופנה ללשונית ה-Results ניתן להפנות לטבלה ולשלוף ממנה לאחר מכן. למשל:

Create Table #SP_Who(spid Int,

                    ecid Int,

                    status Varchar(20),

                    loginame Sysname Null,

                    hostname Sysname Null,

                    blk Int,

                    dbname Sysname Null,

                    cmd Varchar(20),

                    request_id Int);

Go

 

Insert

Into #SP_Who

Exec SP_Who;

Go

 

Select * From #SP_Who;

Go

clip_image004

מה קורה אם בפרוצדורה מחזירה סט בן כמה עשרות עמודות ואין לנו כח ליצור ידנית טבלה?

האם ניתן לבצע משהו בסגנון Select .. Into .. שמפנה פלט של שליפה לתוך טבלה שנוצרת מעצמה?

כן:

Select *

Into #SP_Who

From OPENROWSET('SQLOLEDB','Server=MyServer;Trusted_Connection=yes;','Exec SP_Who;');

Go

 

Select * From #SP_Who;

Go

clip_image006

הוסף תגובה
facebook linkedin twitter email

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *