W tym temacie opisano bieżące ograniczenia opcji środowiska roboczego dotyczących procedur składowanych i funkcji zdefiniowanych przez użytkownika.
Program DB2 nie obsługuje w pełni procedur składowanych i funkcji zdefiniowanych przez użytkownika, które zawierają typy odrębne (typy zdefiniowane przez użytkownika) jako parametry.
Po zaimportowaniu z systemu plików procedury składowanej Java i po pomyślnym wdrożeniu jej do docelowej bazy danych, uruchomienie tej procedury może się nie powieść. Nazwa metody może kolidować z nazwą metody istniejącej już w środowisku, w którym uruchamiana jest procedura składowana.
Upewnij się, że klasa implementacji procedury składowanej jest jednoznacznie zidentyfikowana, umieszczając ją w pakiecie. Wstaw instrukcję pakietu do kodu źródłowego Java, a następnie zaimportuj procedurę składowaną do projektu opracowywania danych. Upewnij się również, że metoda implementacji procedury składowanej posiada unikalną nazwę. Możesz na przykład zmienić nazwę metody w kodzie źródłowym Java przed zaimportowaniem procedury do projektu.
java.sql.SQLException: invalid options string at com.ibm.db2.jcc.sqlj.Binder.a(Binder.java:1018) at com.ibm.db2.jcc.sqlj.Binder.a(Binder.java:775) at com.ibm.db2.jcc.sqlj.Binder.a(Binder.java:432) at com.ibm.db2.jcc.sqlj.Binder.bindMain(Binder.java:338) at com.ibm.db2.jcc.sqlj.Customizer.customizeMain(Customizer.java:810) at com.ibm.db2.jcc.sqlj.Customizer.main(Customizer.java:272)
Ten problem został rozwiązany w bazie danych DB2 UDB dla systemów Linux, UNIX i Windows, wersja 8, pakiet poprawek 6. Aby obejść ten błąd, podaj wszystkie pozostałe opcje wiązania po opcji ACTION(REPLACE). Na przykład, podaj ACTION(REPLACE) BLOCKING(ALL) zamiast BLOCKING(ALL) ACTION(REPLACE).
Aby uniknąć opisanego błędu w przypadku, gdy opcja ACTION(REPLACE) jest jedyną używaną opcją wiązania, automatycznie dodana zostanie opcja VALIDATE(BIND): ACTION(REPLACE) VALIDATE(BIND).