OPENDATASOURCE - SQLSRV
יש לי SP שצריכה להכניס נתונים ל-DB על שרת מרוחק, ואז להריץ שאילתה (שאמורה לכלול את הנתונים שכרגע הוכנסו) ולהחזיר את סט הרשומות. אז יש לי דבר כזה: [מצורף קובץ יותר קריא]
אוף.
אני תמיד יכולה לפצל את הקוד לשתי SP, אבל אני מעדיפה שלא... למישהו יש רעיון
יש לי SP שצריכה להכניס נתונים ל-DB על שרת מרוחק, ואז להריץ שאילתה (שאמורה לכלול את הנתונים שכרגע הוכנסו) ולהחזיר את סט הרשומות. אז יש לי דבר כזה: [מצורף קובץ יותר קריא]
INSERT INTO OPENDATASOURCE( ´SQLOLEDB´, ´Data Source=ws2;User ID=sa;Password=xxx´ ).[testDB].[dbo].[testTbl] (testFld) VALUES (´test´) SELECT * FROM OPENDATASOURCE( ´SQLOLEDB´, ´Data Source=ws2;User ID=sa;Password=xxx´ ).[testDB].[dbo].[testTbl]
מה שקורה, זה שהנתונים מוכנסים, אבל הם לא נכללים בסט הרשומות שהשאילתה השנייה מחזירה... אם אני מנסה לשלוף אותם דרך connection אחר (קריאה ל-SP אחרת, מדף ASP, אחרי שהראשונה הסתיימה), הנתונים החדשים כן מוחזרים לי... זה אומר שמשום מה, כשאני כותבת את ה-OPENDATASOURCE הראשון, נוצר הקשר לשרת המרוחק, ובשאילתה השנייה בעצם הקשר עוד פתוח... כי אני לא מקבלת עדכונים... שזה לא הגיוני, כי אם כך למה צריך פעמיים OPENDATASOURCE