Komunikaty

SQL20100 - SQL20199

SQL20108NTabela wynikowa zawiera nieobsługiwany typ danych na pozycji "<numer-pozycji>" dla kursora "<nazwa-kursora>" otwartego przez procedurę zapisaną w bazie "<nazwa-procedury>".

Objaśnienie: Procedura zapisana w bazie nazwa-procedury nie może zwrócić co najmniej jednej z tabel wynikowych nazwa-kursora, ponieważ co najmniej jedna kolumna numer-pozycji zawiera typ danych, który nie jest obsługiwany ani przez requester aplikacji DRDA (klient), ani przez serwer aplikacji DRDA (serwer). Dlatego wywołanie procedury zapisanej w bazie nie powiodło się.

Działanie użytkownika: Zmodyfikuj instrukcję OPEN (i kolejne instrukcje FETCH) dla kursora nazwa-kursora w procedurze nazwa-procedury zapisanej w bazie, tak aby w wyniku nie została umieszczona kolumna numer-pozycji zawierająca nieobsługiwany typ danych. Ze względu na zmiany wprowadzone w procedurze zapisanej w bazie być może trzeba będzie zmodyfikować aplikację klienta, która wywołuje tę procedurę.

sqlcode: -20108

sqlstate: 56084

SQL20109WBłąd obsługi debuggera DB2. Kod przyczyny: "<kod-przyczyny>".

Objaśnienie: W obsłudze debuggera wystąpił błąd, który uniemożliwi dalsze jego działanie, ale nie zakłóci normalnego wykonania programu. Lista kodów przyczyny:

  1. Nie zainstalowano obsługi debuggera.
  2. W tabeli debuggera wystąpił błąd składniowy w adresie IP klienta debuggera.
  3. Czas oczekiwania na połączenie między debuggerem i klientem debuggera został przekroczony.
  4. Wystąpił błąd podczas dostępu do tabeli debuggera DB2DBG.ROUTINE_DEBUG.

Działanie użytkownika:

  1. Sprawdź, czy zainstalowano opcję debuggera na serwerze DB2.
  2. Sprawdź, czy składnia adresu IP w tabeli debuggera jest poprawna.
  3. Sprawdź, czy demon debuggera na komputerze klienta został uruchomiony i czy numery portów na komputerze klienta i na serwerze są zgodne.
  4. Sprawdź, czy utworzono tabele debuggera o poprawnym układzie.

sqlcode: +20109

sqlstate: 01637

SQL20111NInstrukcje SAVEPOINT, RELEASE SAVEPOINT i ROLLBACK TO SAVEPOINT nie mogą być wydane w tym kontekście. Kod przyczyny = "<kod-przyczyny>".

Objaśnienie: Instrukcja nie może być wykonana, ponieważ narusza ograniczenia, w sposób opisany następującym kodem przyczyny:

  1. Punktu zachowania nie można ustawić wewnątrz wyzwalacza.
  2. Punktu zachowania nie można ustawić wewnątrz transakcji globalnej.
Nie można wykonać instrukcji.

Działanie użytkownika: Usuń instrukcje SAVEPOINT, RELEASE SAVEPOINT i ROLLBACK TO SAVEPOINT, znajdujące się wewnątrz wyzwalacza lub transakcji globalnej.

sqlcode: -20111

sqlstate: 3B503

SQL20112NNie można ustawić instrukcji SAVEPOINT ponieważ instrukcja SAVEPOINT już istnieje, a zagnieżdżone instrukcje SAVEPOINTS nie są obsługiwane.

Objaśnienie: Wystąpił błąd w instrukcji SAVEPOINT lub w niepodzielnej składowej instrukcji SQL. Punkt zachowania już istnieje, a zagnieżdżone punkty zachowania nie są w tym środowisku obsługiwane.

Działanie użytkownika: Jeśli konieczne jest ponowne ustanowienie istniejącego punktu zachowania, wydaj instrukcję RELEASE SAVEPOINT, aby zwolnić istniejący punkt zachowania, a następnie ponownie wydaj instrukcję SAVEPOINT. Dla niepodzielnego, złożonego języka SQL, punktu zachowania SAVEPOINT nie można ustawić przed zakończeniem instrukcji składowej.

sqlcode: -20112

sqlstate: 3B002

SQL20113NMetoda "<id-metody>", zdefiniowana z opcją SEL AS RESULT, nie może zwracać wartości Null.

Objaśnienie: Metoda o identyfikatorze metody "<id-metody>" została zdefiniowana z opcją SELF AS RESULT. Wywołanie metody używa różnej od wartości Null, instancji typu strukturalnego, dzięki czemu metoda nie może zwracać instancji równej Null.

Działanie użytkownika: Zmień implementację metody, aby mieć pewność, że wartość typu null nie będzie zwracana jako wartość zwracana dla metody. Jedna z możliwości polega na ustawieniu wszystkich atrybutów zwracanego typu strukturalnego na wartości równe null. Aby ustalić nazwę metody, której wykonanie się nie powiodło, użyj następującego zapytania:

   SELECT FUNCSCHEMA, FUNCNAME, SPECIFICNAME
      FROM SYSCAT.FUNCTIONS
      WHERE FUNCID = method-id

sqlcode: -20113

sqlstate: 22004

SQL20114WKolumna "<nazwa-kolumny>" z tabeli "<nazwa-tabeli>" nie jest wystarczająco długa dla zdefiniowanej długości, wartości domyślnej USER.

Objaśnienie: Zdefiniowana długość kolumny "<nazwa-kolumny>" jest mniejsza niż 128 bajtów. Dla tej kolumny została określona klauzula DEFAULT USER. Ponieważ rejestr specjalny USER został zdefiniowany jako VARCHAR(128), każda próba przypisania wartości domyślnej dla "<nazwa-tabeli>" przez użytkownika o identyfikatorze użytkownika dłuższym niż długość kolumny, spowoduje powstanie błędu. Użytkownik o identyfikatorze dłuższym niż długość kolumny nie będzie mógł nigdy wstawiać do tej kolumny wartości domyślnej ani aktualizować kolumny wartością domyślną.

Działanie użytkownika: Jeśli standardy twojego systemu nie pozwalają na przekraczanie długości kolumny przez identyfikator użytkownika, to ostrzeżenie to można zignorować. Aby nie dopuścić do pojawiania się tego ostrzeżenia, długość kolumny powinna wynosić co najmniej 128 bajtów. Można zmienić długość kolumny usuwając tabelę i tworząc ją ponownie, lub jeśli typem danych jest VARCHAR, to można do zmiany długości użyć instrukcji ALTER TABLE.

sqlcode: +20114

sqlstate: 01642

SQL20115N"<typ-procedury>" "<nazwa-procedury>" nie można użyć jako "<typ-transformacji>" funkcji transformacji w transformowanej grupie "<nazwa-grupy>".

Objaśnienie: Jeśli "<typ-procedury>" jest FUNCTION, wtedy funkcja zdefiniowana przez "<nazwa-procedury>" nie może być użyta jako funkcja transformacji, ponieważ jest to funkcja wbudowana. Jeśli "<typ-procedury>" jest METHOD, wtedy metoda zdefiniowana przez "<nazwa-procedury>" nie może być użyta jako funkcja transformacji, ponieważ jest to metoda.

Nie można wykonać instrukcji.

Działanie użytkownika: Określ inną funkcję dla funkcji transformacji "<typ-transformacji>" dla transformowanej grupy "<nazwa-grupy>".

sqlcode: -20115

sqlstate: 428EX

SQL20116NTyp danych szukanego celu "<nazwa-parametru>" jest niezgodny z kluczem źródłowym, określonym w rozszerzeniu indeksu "<nazwa-rozszerzenia-indeksu>".

Objaśnienie: Jeśli cel wyszukiwania jest wbudowanego lub oddzielnego typu danych, jego typ musi dokładnie odpowiadać typowi klucza źródłowego, określonego w rozszerzeniu indeksu. Jeśli typ danych szukanego celu jest typu strukturalnego, musi być w tej samej hierarchii typów strukturalnych, co typ danych klucza źródłowego w rozszerzeniu indeksu.

Nie można wykonać instrukcji.

Działanie użytkownika: Określ dla szukanego celu typ danych, który jest zgodny z typem danych klucza źródłowego w rozszerzeniu indeksu.

sqlcode: -20116

sqlstate: 428EY

SQL20117NSpecyfikacja okna dla funkcji OLAP jest niepoprawna. Kod przyczyny = "<kod-przyczyny>".

Objaśnienie: Specyfikacja okna (klauzula OVER) wywołania funkcji OLAP nie została określona poprawnie. Niepoprawna specyfikacja wskazywana jest przez kod "<kod-przyczyny>".

1
W specyfikacji okna, instrukcja RANGE została wyspecyfikowane bez klauzuli ORDER BY.

2
Została określona instrukcja RANGE, natomiast klauzula ORDER BY okna, zawiera więcej niż jedno wyrażenie klucza sortowania.

3
Instrukcja RANGE została określona, natomiast w odejmowaniu nie można użyć typu danych wartości zakresu, w połączeniu z typem danych wyrażenia klucza sortowania, w klauzuli ORDER BY okna.

4
Po instrukcji CURRENT ROW została określona klauzula UNBOUNDED PRECEDING lub po instrukcji UNBOUNDED FOLLOWING została określona klauzula CURRENT ROW.

Nie można wykonać instrukcji.

Działanie użytkownika: Popraw specyfikację okna, wskazywaną przez kod "<kod-przyczyny>".

1
Do każdej specyfikacji okna, w której określono RANGE, dodaj klauzulę okna ORDER BY.

2
Upewnij się, że każda specyfikacja okna, która zawiera RANGE, miała w klauzuli ORDER BY okna, dokładnie jedno wyrażenie klucza sortowania.

3
Dla każdej specyfikacji okna, która zawiera RANGE, upewnij się, że wartości zakresu mogły być odejmowane od wyrażenia klucza sortowania w klauzuli ORDER BY okna, które musi być typu liczbowego lub typu data/godzina. Dla wyrażenia klucza sortowania typu data/godzina, wartość zakresu musi być specyficznego typu, określonego jako przedział czasu DECIMAL, z poprawną dokładnością i skalą.

4
Upewnij się, że każda specyfikacja korzystająca z "BETWEEN" i "CURRENT ROW" miała "UNBOUNDED PRECEDING" przed "AND CURRENT ROW" lub "UNBOUNDED FOLLOWING" po "CURRENT ROW AND".

sqlcode: -20117

sqlstate: 428EZ

SQL20118NTyp strukturalny "<nazwa-typu>" ma więcej niż maksymalną liczbę dopuszczalnych atrybutów. Maksymalną wartością jest "<wartość-maksymalna>".

Objaśnienie: Maksymalna liczba atrybutów, wraz z atrybutami odziedziczonymi, dopuszczalna dla wszystkich typów strukturalnych została przekroczona w definicji typu strukturalnego "<nazwa-typu>". Maksymalna liczba atrybutów, wraz z atrybutami odziedziczonymi, wynosi "<wartość-maksymalna>".

Nie można wykonać instrukcji.

Działanie użytkownika: Upewnij się, że liczba atrybutów dla typu strukturalnego nie przekracza limitu.

sqlcode: -20118

sqlstate: 54050

SQL20119NFunkcja ROW musi definiować co najmniej dwie kolumny.

Objaśnienie: Funkcja, która określa ROW w klauzuli RETURNS, musi zawierać listę kolumn z co najmniej dwoma kolumnami.

Działanie użytkownika: Usuń parametr ROW z klauzuli RETURNS, aby funkcję uczynić skalarną, albo na liście kolumn klauzuli RETURNS określ wiele kolumn.

sqlcode: -20119

sqlstate: 428F0

SQL20120NFunkcja SQL TABLE musi zwracać wynik tabelowy.

Objaśnienie: Funkcja SQL, która w klauzuli RETURNS zawiera parametr TABLES, musi zwracać wynik, który jest tabelą. Z wyjątkiem selekcji skalarnej, wyrażenie skalarne nie może zostać zwrócone jako wynik funkcji SQL TABLE.

Działanie użytkownika: Usuń parametr TABLE z klauzuli RETURNS, aby funkcję uczynić skalarną, albo w instrukcji RETURN w treści funkcji TABLE określ pełną selekcję.

sqlcode: -20120

sqlstate: 428F1


[ Początek strony | Poprzednia strona | Następna strona | Spis treści | Indeks ]