תופעות
שקול את התרחיש הבא:
-
יש לך שרת מקושר ב- Microsoft SQL Server 2008 R2.
-
קיימת טבלה בשרת המקושר המכיל עמודת סוג SMALLDATETIME.
-
אתה מפעיל משפט INSERT או INSERT INTO כדי להוסיף רשומה המכילה נתונים מסוג DATETIME לטבלה.
בתרחיש זה, המשפט נכשל. נוסף לכך, אתה מקבל את הודעת השגיאה הבאה:
ספק OLE DB "SQLNCLI10" עבור השרת המקושר "LinkServerName " החזיר את ההודעה "פעולות OLE DB מרובות שלבים שנוצרו. בדוק כל ערך מצב OLE DB, אם זמין. לא בוצעה כל עבודה".Msg 7344, רמה 16, מצב 1, שורה 1ספק OLE DB "SQLNCLI10" עבור השרת המקושר "LinkServerName" לא היתה אפשרות להוסיף את הטבלה INTO "TableName" עקב העמודה "ColumnName". ההמרה נכשלה מאחר שערך הנתונים חחליף את סוג הנתונים המשמש את הספק.
סיבה
בעיה זו מתרחשת עקב בעיית מיפוי סוג נתונים SQL Server.
פתרון
מידע עדכון מצטבר
SQL Server 2008 R2 Service Pack 2
התיקון לבעיה זו הופץ לראשונה בעדכון מצטבר 3. לקבלת מידע נוסף אודות האופן שבו ניתן להשיג את חבילת העדכון המצטבר עבור SQL Server 2008 R2 Service Pack 2, לחץ על מספר המאמר הבא כדי להציג את המאמר מתוך מאגר הידע Microsoft Knowledge Base:
2754552 חבילת עדכון מצטבר 3 עבור SQL Server 2008 R2 Service Pack 2Note מאחר גירסאות ה- Build הם מצטברים, כל פרסום תיקון חדש מכיל את כל התיקונים החמים ואת כל תיקוני האבטחה שהיו כלולים במהדורה הקודמת של SQL Server 2008 R2 Service Pack 2. מומלץ לשקול להחיל את מהדורת התיקון העדכנית ביותר המכילה תיקון חם זה. לקבלת מידע נוסף, לחץ על מספר המאמר הבא כדי להציג את המאמר מתוך מאגר הידע Microsoft Knowledge Base:
2730301 גירסאות SQL Server 2008 R2 שפורסמו לאחר הפצה של SQL Server 2008 R2 Service Pack 2
מצב
Microsoft אישרה כי זוהי בעיה במוצרי Microsoft המפורטים בסעיף "חל על".
פתרון
כדי לעקוף את הבעיה, השתמש באחת מהשיטות הבאות:
-
שדר את הנתונים מסוג DATETIME לסוג SMALLDATETIME במשפט.
-
שנה את העמודה סוג SMALLDATETIME לסוג DATETIME בשרת המקושר.