Zprostředkovatel MSDASQL nesprávně táhla negativně měřítkem SQL_NUMERIC_STRUCT hodnoty

ID článku: 274604 - Produkty, které se vztahují k tomuto článku.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Příznaky

Při čtení negativně měřítkem číselné hodnoty z ovladač ODBC pomocí zprostředkovatele OLE DB Provider pro ODBC (MSDASQL) výčtu kurzor ActiveX Data Objects (ADO) adUseClient vrácené hodnoty jsou zkráceny.

Řešení

Tento problém vyřešíte pomocí nejnovější aktualizace service pack pro Microsoft MDAC 2.5. Další informace získáte následujícím článku báze Microsoft Knowledge Base:
293312INFORMACE: Jak získat nejnovější součásti MDAC 2.5 Service Pack
Anglická verze této opravy atributy souborů (nebo novější), jsou uvedeny v následující tabulce. Data a časy těchto souborů jsou uvedeny v čase univerzální koordinovaný (čas UTC). Při zobrazení informací o souboru, bude převedena na na místní čas. Rozdíl mezi místním časem a UTC časem kartě časové pásmo v panelu Datum a čas v Ovládacích panelech.
   Date         Time   Version      Size     File Name
   --------------------------------------------------------------------
   31-Jan-2001  18:20  2.53.6131.0  303,376  Msdasql.dll
   31-Jan-2001  18:18  2.53.6131.0   16,384  Msdasqlr.dll
   31-Jan-2001  18:20  2.53.6131.0   78,096  Msdatl2.dll
   31-Jan-2001  18:20  2.53.6131.0   53,520  Msdatt.dll
   28-Feb-2001  18:00  1.10.101.0   484,408  Q277033_w2k_sp3_x86_en.exe
				

Jak potíže obejít

Chcete-li vyřešit tento problém, použijte výčet adUseServer pro vlastnost ADO CursorLocation namísto adUseClient.

Prohlášení

Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny na začátku tohoto článku. Tento problém byl poprvé opraven v aktualizaci Service Pack 3 pro součásti MDAC 2.5.

Další informace

Pokud otevřete objekt ADO Recordset proti všechny ovladače ODBC zprostředkovatele OLE DB Provider pro ODBC (MSDASQL) slouží k poskytování ODBC k překladatelským službám OLE DB. Pokud sadu výsledků, se žádá obsahuje číselné pole a použijete-li adUseClient výčet vlastnost CursorLocation, ADO se pokusí načíst hodnotu číselného pole do struktury DB_NUMERIC OLEDB.

Je-li základní ovladač ODBC hlásí, že je kompatibilní se standardem rozhraní ODBC 3.0, pokusí se MSDASQL svázat SQL_NUMERIC_STRUCT přímo místo hodnoty vazby na řetězec znaků. Pokud SQL_NUMERIC_STRUCT, vrátí ovladač má negativní stupnici a klient zprostředkovatele MSDASQL požaduje hodnotu DB_NUMERIC, MSDASQL nejprve převede SQL_NUMERIC_STRUCT na DB_VARNUMERIC a převede hodnotu DB_NUMERIC. Konečný převod na hodnotu DB_NUMERIC zpracovány nesprávně Pokud měřítko je záporné, což vede k hodnotě zkrácena.

Vlastnosti

ID článku: 274604 - Poslední aktualizace: 26. září 2005 - Revize: 3.1
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft Data Access Components 1.5
  • Microsoft Data Access Components 2.0
  • Microsoft Data Access Components 2.1
  • Microsoft Data Access Components 2.1 Service Pack 2
  • Microsoft Data Access Components 2.5
Klíčová slova: 
kbmt kbhotfixserver kbqfe kbmdac250sp3fix kbbug kbfix KB274604 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:274604

Dejte nám zpětnou vazbu