Wymagania systemowe dotyczące platformy .NET Framework Dostawca danych for Oracle

Program .NET Framework Dostawca danych for Oracle wymaga składników microsoft Data Access Components (MDAC) w wersji 2.6 lub nowszej. Zalecana jest funkcja MDAC 2.8 z dodatkiem SP1.

Konieczne jest również zainstalowanie klienta Oracle 8i Release 3 (8.1.7) lub nowszego.

Oprogramowanie Oracle Client wcześniejsze niż oracle 9i nie może uzyskać dostępu do baz danych UTF16, ponieważ UTF16 jest nową funkcją w programie Oracle 9i. Aby korzystać z tej funkcji, należy uaktualnić oprogramowanie klienckie do programu Oracle 9i lub nowszego.

Praca z Dostawca danych dla danych Oracle i Unicode

Poniżej znajduje się lista problemów związanych z standardem Unicode, które należy wziąć pod uwagę podczas pracy z Dostawca danych .NET Framework dla bibliotek klienckich Oracle i Oracle. Aby uzyskać więcej informacji, zobacz dokumentację oracle.

Ustawianie wartości Unicode w atrybucie ciągu Połączenie ion

Podczas pracy z oracle możesz użyć atrybutu parametry połączenia

Unicode=True

w celu zainicjowania bibliotek klienckich Oracle w trybie UTF-16. Powoduje to, że biblioteki klienta Oracle akceptują kod UTF-16 (który jest bardzo podobny do UCS-2) zamiast ciągów wielo bajtowych. Dzięki temu Dostawca danych oracle zawsze współdziała ze stroną kodu Oracle bez dodatkowego tłumaczenia. Ta konfiguracja działa tylko wtedy, gdy używasz klientów Oracle 9i do komunikowania się z bazą danych Oracle 9i z alternatywnym zestawem znaków AL16UTF16. Gdy klient Oracle 9i komunikuje się z serwerem Oracle 9i, dodatkowe zasoby są wymagane do przekonwertowania wartości CommandText Unicode na odpowiedni zestaw znaków wielobajtowych używanych przez serwer Oracle9i. Można tego uniknąć, gdy wiesz, że masz bezpieczną konfigurację, dodając Unicode=True do parametry połączenia.

Mieszanie wersji klienta Oracle i programu Oracle Server

Klienci Oracle 8i nie mogą uzyskać dostępu do danych NCHAR, NVARCHAR2 lub NCLOB w bazach danych Oracle 9i, gdy zestaw znaków krajowych serwera jest określony jako AL16UTF16 (ustawienie domyślne dla oracle 9i). Ponieważ obsługa zestawu znaków UTF-16 nie została wprowadzona do czasu wprowadzenia programu Oracle 9i, klienci Oracle 8i nie mogą go odczytać.

Praca z danymi UTF-8

Aby ustawić alternatywny zestaw znaków, ustaw klucz rejestru HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMEID\NLS_LANG na UTF8. Aby uzyskać więcej informacji, zobacz informacje o instalacji oracle na swojej platformie. Ustawieniem domyślnym jest podstawowy zestaw znaków języka, z którego instalujesz oprogramowanie klienckie Oracle. Nie ustawiając języka tak, aby był zgodny z zestawem znaków języka narodowego bazy danych, z którą nawiązujesz połączenie, spowoduje, że powiązania parametrów i kolumn będą wysyłać lub odbierać dane w podstawowym zestawie znaków bazy danych, a nie w zestawie znaków krajowych.

OracleLob może aktualizować tylko pełne znaki.

Ze względów OracleLob użyteczności obiekt dziedziczy z klasy strumienia .NET Framework i udostępnia metody ReadByte i WriteByte . Implementuje również metody, takie jak CopyTo i Erase, które działają w sekcjach obiektów Oracle LOB . Z kolei oprogramowanie klienckie Oracle udostępnia wiele interfejsów API do pracy z znakami LOB (CLOB i NCLOB). Jednak te interfejsy API działają tylko na pełnych znakach. Z powodu tej różnicy Dostawca danych dla oracle implementuje obsługę odczytu i odczytu w celu pracy z danymi UTF-16 w sposób bajtowy. Jednak inne metody obiektu OracleLob zezwalają tylko na operacje pełnoznakowe.

Zobacz też