Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Dostrajanie Oracle DG40DBC

Niedawno klient udostępnił obejście, które rozwiązało problem, który wystąpił podczas korzystania z naszego sterownika ODBC SQL Server do łączenia Oracle z SQL Server. Błąd, który otrzymywał klient:

DELETE FROM mytable@MYLINKEDDATABASE
WHERE MyCol = 'MyValue';

17:01:01 [DELETE - 0 row(s), 0.000 secs] [Error Code: 2070, SQL State: 42000]
ORA-02070: database MYLINKEDDATABASE does not support some function in this context

i zostało to rozwiązane przez:

SQL> select fds_class_name from HS_FDS_CLASS;
ODBC11.2.0.2.0_0008
exec dbms_hs.replace_class_caps('ODBC11.2.0.2.0_0008', 564,'ODBC11.2.0.2.0_0008',564,
	                                                                 8191,NULL,1);

PL/SQL procedure successfully completed.

SQL> commit;

Commit complete

W Oracle „SELECT FDS_CLASS_NAME FROM HS_FDS_CLASS” zwróci ciąg, który identyfikuje twoją wersję DG4ODBC. Np.:

ODBC11.2.0.2.0_0008

Uruchamianie tego zapytania:

SELECT * FROM HS_CLASS_CAPS WHERE FDS_CLASS_NAME ='ODBC11.2.0.2.0_0008';

zwraca szereg "możliwości", które pokazują, jak DG4ODBC jest skonfigurowany do zachowania.

W pokazanym wcześniej przykładzie kolumna, w której klient był NVARCHAR rodzaj. Pod kierunkiem wsparcia Oracle klient zmienia zachowanie DG4ODBC w odniesieniu do tego typu danych.

Klient znalazł odpowiednie pole w HS_CLASS_CAPS :

564 TO_NCHAR(op1) 0

i zmieniłem to za pomocą pakietu Oracle, DBMS_HS.ALTER_CLASS_CAPS .

Zauważ, że różne funkcje DG4ODBC nie są, jak się wydaje, udokumentowane nigdzie publicznie. Dlatego ten blog nie może dostarczyć konkretnych wskazówek, jak ich użyć do rozwiązania konkretnego problemu. Zamiast tego udostępniono blog, aby uświadomić Ci, że masz do dyspozycji inne narzędzie, jeśli edytowanie parametrów w pliku konfiguracyjnym DG4ODBC, init.ora nie rozwiąże żadnych problemów, które masz z połączeniem DG4ODBC.

Zobacz też

  • Usuń lub zaktualizuj oświadczenie za pomocą TG4MSQL 10.2 lub DG4ODBC 11.2 Odwołując się do pola Nvarchar, w którym klauzula powoduje błąd ORA-2070
  • Odp.:Problem z Oracle Database Gateway dla ODBC i Unicode

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kolekcje Oracle PL/SQL — tworzenie zagnieżdżonej tabeli w bazie danych

  2. Dlaczego nieprawidłowa konwersja zażądała KODU BŁĘDU:17132?

  3. Jak zmienić format daty w bazie danych Oracle

  4. Jaka jest podwójna tabela w Oracle?

  5. Oracle ORA-30004 przy użyciu funkcji SYS_CONNECT_BY_PATH,