Simptomi
Razmotrite sledeći scenario:
-
Imate povezani server u sistemu Microsoft SQL Server 2008 R2.
-
Na povezanom serveru postoji tabela koja ima kolonu TIPA SMALLDATETIME.
-
Pokrenete insert ili INSERT INTO izvod da biste u tabelu umetnuli zapis koji sadrži podatke tipa DATETIME.
U ovom scenariju, izjava ne uspeva. Pored toga, dobijate sledeću poruku o grešci:
OLE DB dobavljač "SQLNCLI10" za povezani server "LinkServerName " je vratio poruku "Višesinhoc OLE DB operacija generisanih grešaka. Proverite svaku OLE DB statusnu vrednost ako je dostupna. Nijedan posao nije obavljen.". Msg 7344, Level 16, State 1, Line 1The OLE DB provider "SQLNCLI10" for linked server "LinkServerName" could not INSERT INTO table "TableName" because of column "ColumnName". Konverzija nije uspela jer je vrednost podataka prelila tip podataka koji je koristio dobavljač.
Uzrok
Do ovog problema dolazi zbog problema sa mapiranjem tipa podataka u sistemu SQL Server.
Rešenje
Kumulativne informacije o ažuriranju
SQL Server 2008 R2 servisni paket 2
Ispravka za ovaj problem je prvi put objavljena u kumulativnoj ispravci 3. Za više informacija o nabavljanju ovog paketa kumulativnih ispravki za SQL Server 2008 R2 servisni paket 2 kliknite na sledeći broj članka da biste videli članak u Microsoft bazi znanja:
2754552 Kumulativni paket ispravki 3 za SQL Server 2008 R2 servisni paket 2Napomena Pošto su verzije kumulativne, svako novo izdanje ispravke sadrži sve hitne ispravke i sve bezbednosne ispravke koje su uključene u prethodno izdanje ispravke za SQL Server 2008 R2 servisni paket 2. Preporučujemo da razmislite o primeni najnovijeg izdanja ispravke koje sadrži ovu hitnu ispravku. Za više informacija kliknite na sledeći broj članka da biste videli članak u Microsoft bazi znanja:
2730301 SQL Server 2008 R2 builds that were released after SQL Server 2008 R2 Service Pack 2 was released
Status
Microsoft je potvrdio da je ovo problem u Microsoft proizvodima koji su navedeni u odeljku "Odnosi se na".
Rešenje
Da biste zaobiљli problem, koristite jedan od sledeжih metoda:
-
Bacite podatke tipa DATETIME na SMALLDATETIME tip u izvodu.
-
Promenite kolonu TIPA SMALLDATETIME u tip DATETIME na povezanom serveru.