Справочник на съобщенията

SQL0900 - SQL0999

SQL0900NСъстоянието на приложението е погрешно. Не съществува връзка на базата данни.

Обяснение: Не съществува връзка с базата данни. Това може да се дължи на една от следните причини:

Отговор на потребителя: Осъществете работна връзка или като превключите към съществуваща пасивна връзка (използвайки CONNECT TO или SET CONNECTION), или като установите нова връзка (чрез CONNECT).

sqlcode: -900

sqlstate: 08003

SQL0901NОператорът SQL не е успешен поради второстепенна системна грешка. Следващите SQL оператори може да бъдат изпълнени. (Причина "<причина>".)

Обяснение: Възникнала е грешка, дължаща се на системна грешка. Обработката на SQL оператора е приключила поради "<причина>" (тя е само на английски език и се използва само от поддържащия IBM персонал).

Отговор на потребителя: Запишете номера на съобщението (SQLCODE) и причината "<причина>".

Ако трасирането е активно, извикайте Независимото помощно средство за трасиране от командния промпт на операционната система. Прегледайте Независимо помощно средство за трасиране в Ръководство за отстраняване на проблеми за информация за използването на тази възможност. Свържете се с вашия представител на техническия сервиз като предоставите следната информация:

Потребители на обединени системи: изолирайте проблема до източника на данни, който не е успял да удовлетвори заявката (направете справка с Ръководство за отстраняване на проблеми, за да определите кой източник на данни не е успял да обработи SQL оператора), и направете необходимото за диагностика на този източник на данни. За различните източници процедурите за определяне на проблемите се различават, затова направете справка с ръководствата на съответните източници на данни.

sqlcode: -901

sqlstate: 58004

SQL0902CВъзникнала е системна грешка (код на причина = "<код-на-причина>"). Следващите SQL оператори не може да бъдат обработени.

Обяснение: Възникнала е системна грешка.

Отговор на потребителя: Запишете номера на съобщението (SQLCODE) и кодът на причината от това съобщение.

Ако трасирането е активно, извикайте Независимото помощно средство за трасиране от командния промпт на операционната система. Прегледайте Независимо помощно средство за трасиране в Ръководство за отстраняване на проблеми за информация за използването на тази възможност. Свържете се с вашия представител на техническия сервиз като предоставите следната информация:

Потребители на обединени системи: изолирайте проблема до източника на данни, който не е успял да удовлетвори заявката (направете справка с Ръководство за отстраняване на проблеми, за да определите кой източник на данни не е успял да обработи SQL оператора), и направете необходимото за диагностика на този източник на данни. За различните източници процедурите за определяне на проблемите се различават, затова направете справка с ръководствата на съответните източници на данни.

sqlcode: -902

sqlstate: 58005

SQL0903NОператор COMMIT не е успешен и върху транзакцията е извършен ролбек. Код на причината: "<код-на-причина>".

Обяснение: Един или повече на брой от сървърите, участващи в текущата единица работа, не е успял да подготви базата данни за записване на промените. Операторът COMMIT е неуспешен и върху транзакцията е извършен ролбек.

Възможните кодове за причина са следните:

01
Загубена е връзка с една от базите данни, участващи в тази единица работа.

Потребители на обединени системи: ако базата данни, към която сте се свързали, е обединен сървър база данни, в която се използват прякори, то е загубена връзката с един от източниците на данни, необходим за определянето на прякор вътре в базата данни.

02
Осъществен е достъпът до една от базите данни или възли, които участват в тази единица работа, но не е било възможно да се извърши подготовка за записване на промените.

Потребители на обединени системи: ако базата данни, към която сте се свързали, е обединен сървър база данни, в която се използват прякори, то един от източниците на данни, необходим за определянето на прякор, не е в състояние да се подготви за комит.

03
DB2 Data Links Manager, участващ в единицата работа, не е могъл да извърши подготовка за комит.

Отговор на потребителя: Ако е прекъсната връзка към база данни, осъществете я повторно. Ако отказът не е свързан с връзката, направете справка с журналите за отразяване на диагнозите за грешки в отдалечената система, за да определите природата на проблема и какво действие може да се изисква. Пуснете повторно приложението.

sqlcode: -903

sqlstate: 40504

SQL0904NНеуспешно изпълнение поради недостъпен ресурс. Код на причина: "<код-на-причина>", тип ресурс: "<тип-на-ресурс>" и име на ресурс: "<име-на-ресурс>".

Обяснение: SQL операторът не може да бъде изпълнен, защото ресурсът "<име-на-ресурс>" от тип "<тип-на-ресурс>" не е на разположение в този момент поради причината, посочена от "<код-на-причина>". Направете справка с документацията на DB2 за MVS за определяне на проблемите, за да намерите обяснение на кодовете на ресурси.

Отговор на потребителя: Проверете идентичността на ресурса, който не е бил на разположение. За да определите защо той не е бил достъпен, направете справка с посочения "<код-на-причина>".

sqlcode: -904

sqlstate: 57011

SQL0905NИзпълнението не е успешно, тъй като ограничението на ресурс е нарушено. Име на ресурс = "<име-на-ресурс>", лимит = "<количество1>" CPU секунди ("<количество>" сервизни единици) получени от "<източник>".

Обяснение: Изпълнението на SQL оператора е приключено, тъй като ограничението за ресурс е превишено.

Името на ресурса, чието ограничение е било нарушено, е "<име-на-ресурс>". Това е също и името на колоната в таблицата за спецификация от ограничението на ресурса, от която е получено ограничението. Ограничението, което е превишено в CPU секунди, е "<количество1>", а в сервизни единици то е "<количество>". "<име-на-ресурс>" може да бъде ASUTIME, което представлява броят CPU секунди, разрешени за всеки SQL оператор. Максималният позволен брой CPU секунди е "<количество1>". В сервизни единици максимумът е "<количество>".

Източникът, използван за получаване на ограничението, е "<източник>" и представлява или име на таблица за спецификация на ограничение на ресурс, или е "системен параметър". Ако източникът е системен параметър, таблицата за спецификация на ограничението на ресурса не е съдържала приложим запис или е възникнала грешка при опита за достъп до таблицата. И в двата случая ограничението се получава от инсталационен (системен) параметър.

Отговор на потребителя: Определете защо е било необходимо толкова време за изпълнението на този SQL оператор и предприемете необходимите мерки. Помислете дали може да опростите SQL оператора и да преструктурирате таблици и индекси или се свържете с групата за инсталиране, отговорна за поддържането на таблиците за спецификация на ограничението на ресурс.

Приложна програма, получила този код на връщане, може да изпълни допълнителни SQL оператори.

sqlcode: -905

sqlstate: 57014

SQL0906NSQL операторът не може да бъде изпълнен, защото тази функция е невъзможна поради настъпила грешка.

Обяснение: Изпълнението на SQL оператора не е успешно, тъй като заявеният SQL оператор е деактивиран поради настъпила грешка. Тази ситуация може да възникне, ако приложната програма е засякла abend (примерно чрез условие ON ERROR в PL/I програма) и е продължила да изпълнява SQL оператори. Тази ситуация може да възникне също така и ако DB2 CICS транзакция е срещнала грешка при създаване на нишка, но е продължила да подава SQL заявки, без първо да подаде SYNCPOINT ROLLBACK.

Отговор на потребителя: По принцип една приложна програма трябва да приключи работата си при получаване на този код на връщане. Всички следващи опити на приложението да изпълни други SQL оператори също няма да бъдат успешни и ще дадат същия код на връщане. В случай на DB2 CICS транзакция, ако полето SQLERRP в SQLCA съдържа име на модул DSNCEXT1, транзакцията може да подаде SYNCPOINT ROLLBACK и да продължи работа. Ако транзакцията избере да извърши ROLLBACK и да продължи работа, тя трябва да е способна да поправи ситуацията, довела първоначално до грешката при създаване на нишка.

sqlcode: -906

sqlstate: 24514, 51005, 58023

SQL0908N"<тип-свързване>" грешка: операциите BIND, REBIND или AUTO_REBIND не са позволени посредством "<идентификатор-за-оторизация>" оторизация .

Обяснение: В случая на BIND и REBIND посоченият идентификатор за оторизация няма право да извърши посочената "<тип-свързване>" с план или пакет. Има запис в таблицата за спецификация на ограничение на ресурс (resource limit specification table - RLST), който забранява свързването и повторното свързване от този идентификатор за оторизация или всички идентификатори за оторизация. В случай на AUTO-REBIND системният параметър, контролиращ операциите AUTO-REBIND, е настроен да не разрешава AUTO-REBIND.

тип-свързване
тип на операцията за свързване (BIND, REBIND или AUTO-REBIND).

идентификатор-за оторизация
Идентификаторът за оторизация на подалия подкомандата BIND или първичният идентификатор за оторизация на подалия плана за операции AUTO-REBIND.

Отговор на потребителя: Ако посоченият идентификатор за оторизация трябва да може да извършва свързвания, променете записа в активната RLST таблица. Ако операциите AUTO-REBIND не са разрешени, свържете пакета отново, преди да го изпълните повторно.

sqlcode: -908

sqlstate: 23510

SQL0909NОбектът е бил изтрит.

Обяснение: Приложната програма е извършила едно от следните неща: (1) премахнала е таблица и след това се е опитала да осъществи достъп до нея, или (2) премахнала е индекс и след това се е опитала да осъществи достъп до обектната й таблица, използвайки този индекс.

Отговор на потребителя: Логиката на приложната програма трябва да се коригира така, че тя да не прави опити да използва обект или да осъществява достъп до него, след като го е премахнала.

Премахването на индекси в приложна програма е особено опасно, защото няма начин да се определи дали планът, който е бил генериран за приложението (чрез BIND или REBIND) използва всъщност определен индекс за достъп до своята обектна таблица.

sqlcode: -909

sqlstate: 57007

SQL0910NSQL операторът не може да осъществи достъп до обект, за който предстои модификация.

Обяснение: Приложната програма направи опит за достъп до обект, намиращ се в същата единица работа, в която или:

Потребители на обединени системи: в допълнение към дотук изброените причини може да съществуват и други ограничения, специфични за определени източници на данни, които предотвратяват достъпа до обекта.

SQL операторът не може да бъде изпълнен.

Отговор на потребителя: Модифицирайте приложната програма така, че да няма опит за достъп до обект, намиращ се в същата единица работа, в която е извършена модификацията. По принцип по-добре е да се изолират операторите от езика за описание на данните (DDL) в друга единица работа от операторите на езика за манипулиране на данните (DML), които осъществяват достъп до същите обекти.

Промените в единицата работа трябва да са записани или трябва да е направен ролбек, преди да стане възможно успешното изпълнение на неуспешния оператор. Ако вече записаната модификация е причина за премахването на обект, тогава може да се наложи повторното създаване на този обект, за да може неуспешният SQL оператор да бъде изпълнен успешно.

Ако обектът е модифициран със SAVEPOINT, променете приложната програма, така че тя да не прави опит за достъп до обекта, след като е подала оператора ROLLBACK TO SAVEPOINT. Всеки указател, който осъществява достъп до модифицирания обект и е отворен по времето на ROLLBACK TO SAVEPOINT, няма да бъде достъпен. Модифицирайте приложението така, че то да затваря указателя.

Ако оператор за вмъкване, изтриване или обновяване, включващ NOT LOGGED декларирана временна таблица, е неуспешен, то всички редове в тази таблица са изтрити. Всеки указател, който е отворен за тази декларирана временна таблица, в момента на отказа, няма да бъде достъпен и трябва да бъде затворен от приложението.

Потребители на обединени системи: ако извършеното действие не разреши проблема, изолирайте заявката (направете справка с Ръководство за отстраняване на проблеми, за да определите кой източник на данни не е успял да обработи SQL оператора), и определете кои допълнителни ограничения съществуват в източника на данни, които не позволяват достъпа до обекта. Уверете се, че приложението не нарушава никое от тези ограничения.

sqlcode: -910

sqlstate: 57007

SQL0911NВърху текущата транзакция е извършен ролбек

поради заключване на ресурси или таймаут. Код на причината "<код-на-причина>".

Обяснение: Текущата единица работа е включена в неразрешен опит за повторно заключване на ред за използване на обект и се е наложило да се извърши ролбек.

Кодовете на причините са следните:

2
върху транзакцията е извършен ролбек поради заключване на ресурси.

68
върху транзакцията е извършен ролбек поради таймаут при заключване.

72
за транзакцията е изпълнен ролбек поради грешка в DB2 Data Links Manager, участващ в транзакцията.
Забележка:Промените, свързани с единицата работа, трябва да бъдат въведени отново.
Направен е ролбек на приложението до предишния COMMIT.

Отговор на потребителя: За да се избегне заключване на ресурси или таймаут при заключване, подавайте често операции COMMIT, ако това е възможно, в случай на работа с продължаващи дълго приложения или с приложения, които могат да доведат до заключване на ресурси.

Потребители на обединени системи: заключването на ресурси може да стане в системата обединен сървър или в източника на данни. Няма механизъм за откриване на блокирания поради заключвания на ресурси, които обхващат източници на данни и потенциално обединената система. Възможно е да се идентифицира източникът на данни, който не е успял да удовлетвори заявката (направете справка с ръководството за определяне на проблеми, за да определите кой източник на данни не е успял да обработи SQL оператора).

Заключванията на ресурси често са нормални или очаквани по време на обработка на определени комбинации от SQL оператори. Препоръчително е да създадете приложения, съдействащи за избягването на заключване на ресурси, доколкото това е възможно.

sqlcode: -911

sqlstate: 40001

SQL0912NЗа базата данни е достигнат максимално допустимият брой на заявки за заключване.

Обяснение: Достигнат е максимално допустимият брой заключвания за базата данни, тъй като за списъка за заключване е заделена недостатъчна памет.

Операторът не може да бъде обработен.

Отговор на потребителя: Върху приложението трябва да бъде приложен оператор COMMIT или ROLLBACK, преди да се подават други SQL оператори. Помислете дали не може да се увеличи конфигурационният параметър (locklist), за да се получи повече пространство за списъка за заключване.

sqlcode: -912

sqlstate: 57011

SQL0913NНеуспешно изпълнение, предизвикано от заключване на ресурси или таймаут. Код на причината "<код-на-причина>".

Обяснение: Подадената заявка е включена в неразрешен опит за повторно заключване на ред при използване на обект и изпълнението й не е успешно.

Кодовете на причините са следните:

2
клон на транзакцията не е изпълнен успешно поради заключване на ресурси.

68
клон на транзакцията не е изпълнен успешно поради таймаут при заключване.

72
за транзакцията е изпълнен ролбек поради грешка в DB2 Data Links Manager, участващ в транзакцията.

80
операторът не е изпълнен успешно поради таймаут.

Отговор на потребителя:

sqlcode: -913

sqlstate: 57033

SQL0917NОтдалечено свързване от страна на рикуестер за DRDA приложение не е успешно.

Обяснение: Възникнала е грешка по време на отдалечено свързване от страна на рикуестер за DRDA приложение. Такава грешка може да възникне по време на обработване на свързване или на записване на промените.

Отговор на потребителя: Този проблем обикновено е причинен от SQL оператор, който не е бил свързан поради грешка. Потребителят трябва да се консултира с помощното средство за диагностика при рикуестера за DRDA приложение, за да определи кой оператор предизвиква грешката, и да я коригира.

sqlcode: -917

sqlstate: 42969

SQL0918NПриложението трябва да извърши ролбек.

Обяснение: Върху единицата работа вече е извършен ролбек в базата данни, но за други мениджъри на ресурси, включени в тази единица работа, това може да не е така. За да се осигури целостта на това приложение, всички SQL заявки ще бъдат отхвърляни, докато приложението не подаде ролбек.

Отговор на потребителя: Всички SQL заявки ще бъдат отхвърляни, докато приложението не подаде ролбек. В CICS среда например това трябва да е командата CICS SYNCPOINT ROLLBACK.

sqlcode: -918

sqlstate: 51021

SQL0920NКлиентска система не може да осъществява достъп до данни от база данни на други клиентски системи.

Обяснение: Работната станция е конфигурирана като клиент или като сървър с локални клиенти. Базите данни, създадени на тази система, не могат да се използват от други работни станции.

Функцията не може да бъде обработена.

Отговор на потребителя: Искайте данни само от работни станции на сървъра.

sqlcode: -920

sqlstate: 57019

SQL0925NSQL COMMIT е невалиден за средата, в която се изпълнява приложението.

Обяснение: Не се допуска изпълнение на COMMIT в следните случаи:

Отговор на потребителя: Коригирайте проблема, като извършите едно от следните неща:

sqlcode: -925

sqlstate: 2D521

SQL0926NSQL ROLLBACK е невалиден за средата, в която се изпълнява приложението.

Обяснение: Не се допуска изпълнение на ROLLBACK в следните случаи:

  1. В среда за разпределена обработка на транзакциите от рода на CICS е направен опит за изпълнение на статичен оператор SQL ROLLBACK, но се изисква оператор за извършване на ролбек, специфичен за тази среда. В CICS среда например това трябва да е командата CICS SYNCPOINT ROLLBACK.
  2. DB2 приложение, предкомпилирано или настроено да използва CONNECT 2, е подало динамичен оператор SQL ROLLBACK, докато е позволено изпълнението само на статични SQL ROLLBACK.
  3. Когато се подава от запомнена процедура, изпълнението на SQL ROLLBACK също е ограничено, ако повикващата програма работи в разпределена единица работа (CONNECT type 2) или в среда за разпределена обработка на транзакциите.

Отговор на потребителя:

  1. Отстранете оператора, подаващ ROLLBACK, и го заменете с оператор, който извършва равностойно действие в съответната среда.
  2. В случая с отдалечено свързване от тип 2, използвайте само статичен COMMIT.
  3. В случая на запомнена процедура премахнете я изцяло.

sqlcode: -926

sqlstate: 2D521

SQL0930NНяма достатъчно достъпна памет за изпълнение на оператора.

Обяснение: Направена е заявка към базата данни, изискваща използването на друга страница от паметта, но повече страници не са на разположение на мениджъра на базата данни.

Операторът не може да бъде обработен.

Отговор на потребителя: Възможните решения са следните:

sqlcode: -930

sqlstate: 57011

SQL0931CПолучи се препълване на файловата таблица на операционната система. Следващите SQL изрази не могат да бъдат обработени.

Обяснение: Достигната е граница във възможностите на операционната система. На приложната програма е забранено да задава допълнителни SQL оператори. В базата данни е необходимо възстановяване и достъпът до нея на всички приложения, които я използват, е забранен.

Отговор на потребителя: Преустановете всички приложения, които използват базата данни. Стартирайте повторно базата данни.

За да не се допусне повторното възникване на проблема:

sqlcode: -931

sqlstate: 58005

SQL0950NТаблицата или индексът не може да бъде пропуснат, защото в момента се използва.

Обяснение: Не може да бъдат подадени оператори A DROP TABLE или DROP INDEX, когато отворен указател в момента използва таблицата или индекса.

Операторът не може да бъде обработен. Таблицата или индексът не са пропуснати.

Отговор на потребителя: Затворете изискваните указатели и подайте повторно оператора.

sqlcode: -950

sqlstate: 55006

SQL0951NОбектът "<име-на-обект>" от тип "<тип-на-обект>" не може да бъде променен, защото той в момента се използва от същия работен процес.

Обяснение: Не може да се подава оператор ALTER или оператор SET INTEGRITY за обект, когато той е заключен или се използва.

Операторът не може да бъде обработен. Обектът не е променен.

Отговор на потребителя: Затворете всички указатели, които зависят директно или индиректно от обекта "<име-на-обект>", и подайте оператора отново.

sqlcode: -951

sqlstate: 55007

SQL0952NОбработката е преустановена поради прекъсване.

Обяснение: Вероятно потребителят е натиснал последователността от клавиши за прекъсване.

Обработката на оператора е прекъсната. Вероятно са направени някои промени в базата данни, но не са записани преди прекъсването.

Потребители на обединени системи: тази ситуация може да бъде открита и чрез източника на данни.

Отговор на потребителя: Продължава обработката на приложението.

Ако сте в процес на инсталиране на примерна база данни, отстранете я и я инсталирайте отново.

sqlcode: -952

sqlstate: 57014

SQL0954CНяма достатъчно достъпна памет в стека на приложенията за обработка на оператора.

Обяснение: Цялата достъпна за приложението памет вече е е използвана.

Операторът не може да бъде обработен.

Отговор на потребителя: Прекъснете приложението при получаване на това съобщение. Увеличете параметъра за конфигурация на базата данни (applheapsz), за да разрешите използването на по-голям стек за приложенията.

sqlcode: -954

sqlstate: 57011

SQL0955CНе може да бъде заделена памет за сортиране за изпълнение на оператора. Код на причина = "<код-на-причина>".

Обяснение: Няма достатъчно виртуална памет, достъпна за агента на базата данни за обработка на сортиране, както е показано от кода на причината:

1
Недостатъчна памет за частен процес.

2
Недостатъчна поделена памет в поделената памет за базата данни, предназначена за обработка на сортиране.
Операторът не може да бъде изпълнен, но може да бъде обработен друг SQL оператор.

Отговор на потребителя: Опитайте едно или повече от следните действия:

sqlcode: -955

sqlstate: 57011

SQL0956CНяма достатъчно достъпна памет в стека на базата данни за обработка на оператора.

Обяснение: Цялата достъпна за базата данни памет вече е използвана.

Операторът не може да бъде обработен.

Отговор на потребителя: Прекъснете приложението при получаване на това съобщение. Увеличете параметъра за конфигурация на базата данни (dbheap), за да разрешите използването на по-голям стек за базата данни. Ако броят на I/O приложенията е до максималната граница, ще бъде добре да го намалите.

sqlcode: -956

sqlstate: 57011

SQL0958CДостигнат е максимално разрешеният брой на отворени файлове.

Обяснение: Достигнат е максимално разрешеният брой на достъпните указатели на файлове в базата данни.

Операторът не може да бъде обработен.

Отговор на потребителя: Увеличете всеки параметър, който определя максималния брой на отворени файлове в това място от базата данни. Увеличете параметъра за конфигурация (maxfilop), за да разрешите използването на повече указатели за файлове за потребителския модел, и преустановете други сесии, за да намалите броя на използваните указатели.

sqlcode: -958

sqlstate: 57009

SQL0959CНяма достатъчно достъпна памет в стека за комуникации на клиента или в сървъра за обработка на оператора.

Обяснение: Цялата достъпна памет в стека за комуникации на сървъра вече е използвана.

Командата или операторът не може да бъде изпълнен.

Отговор на потребителя: Прекъснете приложението при получаване на това съобщение. Увеличете размера на параметъра на стека за комуникации (comheapsz) във файла за конфигурация на мениджъра на базата данни в работната станция на сървъра.

ЗАБЕЛЕЖКА: Това съобщение се отнася само за версии на DB2 преди Версия 2.

sqlcode: -959

sqlstate: 57011

SQL0960CДостигнат е максимално разрешеният брой файлове в базата данни.

Обяснение: Достигнат е максимално разрешеният брой файлове в базата данни.

Операторът не може да бъде обработен.

Отговор на потребителя: Прекъснете приложението при получаване на това съобщение. Преустановете връзката на всички приложения с базата данни и след това ги свържете повторно към нея. Ако се появи същата грешка, отстранете таблиците или индексите, или и двете, или разделете базата данни.

Ако сте в процес на инсталиране на примерна база данни, отстранете я и я инсталирайте отново.

sqlcode: -960

sqlstate: 57011

SQL0964CЖурналът на транзакциите за базата данни е пълен.

Обяснение: Използва се цялото пространство на журнала на транзакциите.

Ако се използва журнал с припокриване на записи с файлове на вторичен журнал, ще бъде направен опит за разполагането им и използването им. Ако във файловата система няма достатъчно пространство, не могат да се използват вторични журнали.

Ако се използва архивен журнал, файловата система не предоставя пространство за нов журнален файл.

Операторът не може да бъде обработен.

Отговор на потребителя: Изпълнете COMMIT или ROLLBACK, ако получите това съобщение (SQLCODE) или опитайте повторно операцията.

Повторете операцията, ако базата данни е обновена от конкурентно приложение. Може да бъде освободено пространство в журнала, когато приключи транзакцията на друго приложение.

Извършвайте по-често операции за запис на промените. Ако промените във вашите транзакции не са записани, след записа им вероятно ще се освободи пространство в журнала. При проектиране на приложение вземете предвид честотата на записа на промените на транзакциите, за да предотвратите препълването на журнала.

За да предотвратите заключването на ресурсите, проверявайте ги по-често. Това може да се осъществи чрез намаляване стойността на параметъра DLCHKTIME при конфигурация на базата данни. По този начин заключването на ресурсите ще бъде открито и преодоляно бързо (чрез ROLLBACK), като освен това ще се освободи пространство в журнала.

Ако това се случва често, увеличете параметъра за конфигурация на базата данни, за да определите по-голям размер на журналния файл. За по-големия журнален файл е нужно повече пространство, но се намалява необходимостта от повтаряне на операциите за приложенията.

Ако сте в процес на инсталиране на примерна база данни, отстранете я и я инсталирайте отново.

sqlcode: -964

sqlstate: 57011

SQL0965WНяма текст на съобщение, съответстващ на SQL предупреждение "<SQLCODE>" във файла за съобщения на тази работна станция. Предупреждението е направено от модула "<име>" с оригинални токени "<списък токени>".

Обяснение: Сървърът на базата данни е върнал код "<SQLCODE>" на приложението. Кодът на предупреждението не съответства на съобщение във файла за съобщения на мениджъра на базата данни на тази работна станция.

Отговор на потребителя: Вижте документацията на сървъра на базата данни, за да определите причината за съответния "<SQLCODE>".

SQL0966NФайлът за регистрация на грешките "<име>", зададен в директорията за DCS, не може да бъде намерен или отворен.

Обяснение: Изпълнено е едно от следните условия:

Файлът за регистрация на грешките не може да бъде възстановен.

Отговор на потребителя: Освободете файла от приложението, в което той е отворен, и инсталирайте повторно или възстановете оригиналния файл.

sqlcode: -966

sqlstate: 57013

SQL0967NФорматът на файла за регистрация на грешките "<име>", определен в директорията за DCS, не е валиден.

Обяснение: Открита е грешка по време на четене на файла за регистрация на грешките.

Файлът за регистрация на грешките не може да бъде възстановен.

Отговор на потребителя: Коригирайте всички синтактични грешки във файла за регистрация на грешките.

sqlcode: -967

sqlstate: 55031

SQL0968CФайловата система е пълна.

Обяснение: Една от файловите системи, съдържащи базата данни, е пълна. Тази файлова система може да съдържа директория от базата данни, журнални файлове на базата данни или контейнер на пространството за таблици.

Операторът не може да бъде обработен.

Отговор на потребителя: За да определите коя файлова система е пълна, проверете в журнала за диагностика. Освободете системно пространство, като изтриете излишните файлове. Не изтривайте файлове от базата данни. Ако е необходимо допълнително пространство, може да отстраните ненужните таблици или индекси.

В базираните на Unix системи състоянието на препълване на диска може да се предизвика при надвишаване на максимално допустимия размер на файла за текущия потребител. Използвайте командата chuser, за да обновите fsize. Вероятно ще се наложи да заредите отново системата.

sqlcode: -968

sqlstate: 57011

SQL0969NНяма текст на съобщение, съответстващ на SQL грешката "<грешка>" във файла за съобщения на тази работна станция. Съобщението за грешка е направено от модула "<име>" с оригинални токени "<списък токени>".

Обяснение: Сървърът на базата данни връща на вашето приложение SQLCODE "<грешка>". Кодът на грешката не съответства на съобщение във файла за съобщения на мениджъра на базата данни на тази работна станция.

Отговор на потребителя: За да намерите причината за определения SQLCODE, проверете в документацията за сървъра на базата данни. Изпълнете действията, описани в документацията на сървъра на базата данни по този проблем.

Потребители на обединени системи: изолирайте проблема до източника на данни, който не е успял да удовлетвори заявката, (направете справка с Ръководство за отстраняване на проблеми, за да определите кой източник на данни не е успял да обработи SQL оператора). Намерете "<грешка>" в съответното ръководство за източника на данни. Ако проблемът е зависим от данните, проверете данните, които са били обработвани в източниците на данни при възникването на грешката.

SQL0970NСистемата е направила опит да запише във файл само за четене.

Обяснение: Файл, използван от базата данни, е маркиран като само-за-четене или не съществува. Базата данни иска достъп за запис в този файл.

Операторът не може да бъде обработен.

Отговор на потребителя: Прекъснете приложението при получаване на това съобщение (SQLCODE). Уверете се, че е разрешен достъпът за четене и писане до всички файлове на базата данни. Проверете за излишни празни интервали в посоченото име на файл.

sqlcode: -970

sqlstate: 55009

SQL0972NУстройството на базата данни не съдържа необходимата дискета.

Обяснение: Дискетата в устройството не е дискетата на базата данни.

Операторът не може да бъде обработен.

Отговор на потребителя: Поставете необходимата дискета в устройството. Не изваждайте дискетата, ако приложението използва базата данни, записана на нея.

sqlcode: -972

sqlstate: 57019

SQL0973NНяма достатъчно достъпна памет в стека "<име-на-стек>" за обработка на оператора.

Обяснение: Използвана е цялата достъпна памет за този стек. Операторът не може да бъде обработен.

Отговор на потребителя: Прекъснете приложението при получаване на това съобщение (SQLCODE). Увеличете конфигурационния параметър за "<име-на-стек>", за да увеличите размера на стека.

sqlcode: -973

sqlstate: 57011

SQL0974NУстройството, което съдържа базата данни, е заключено.

Обяснение: Системата съобщава, че устройството, в което е базата данни, е заключено.

Операторът не може да бъде обработен.

Отговор на потребителя: Проверете дали няма други обработки (например CHKDSK), които могат да заключат устройството за системата. Повторете операцията.

Ако сте в процес на инсталиране на примерна база данни, отстранете я и я инсталирайте отново.

sqlcode: -974

sqlstate: 57020

SQL0975NНовата транзакция не може да бъде стартирана, защото базата данни или потребителският модел "<име>" е защитена от потребителя "<потребител>". Тип на предпазване: "<тип>".

Обяснение: Друг потребител е защитил потребителския модел или базата данни, която се опитвате да използвате. По време на защитата не са разрешени нови транзакции.

Типът на предпазване "<тип>" сочи потребителски модел или база данни, които вече са предпазени, и е '1' за потребителски модел и '2' за база данни.

Отговор на потребителя: Свържете се с потребителя, който е защитил в момента потребителския модел или базата данни, за да премахне защитата, и тогава повторете заявката.

sqlcode: -975

sqlstate: 57046

SQL0976NДискетното устройство не е затворено.

Обяснение: Вратичката на устройството за базата данни е отворена.

Операторът не може да бъде обработен.

Отговор на потребителя: Затворете вратичката и повторете операцията.

sqlcode: -976

sqlstate: 57021

SQL0977NНеразпознато COMMIT състояние.

Обяснение: tm_database е станало недостъпно по време на COMMIT обработка и това е причината резултатът от COMMIT да е неизвестен. Когато tm_database стане достъпна, ще се изпълни ресинхронизация на базите данни. Забележете, че вероятно по време на повторната синхронизация е направен ролбек на транзакцията. По-нататъшното изпълнение на SQL оператори може да бъде успешно, въпреки че заключването може да продължи до завършването на процеса на повторна синхронизация.

Отговор на потребителя: Проверете дали връзката с tm_database може да бъде осъществена, например чрез използване на CLP. Ако не е възможно, следвайте инструкциите на върнатия SQLCODE и връзката ще бъде установена.

sqlcode: -977

sqlstate: 40003

SQL0978NДискетата е защитена от запис.

Обяснение: Направен е опит за запис в базата данни на дискета, но тя е защитена от запис.

Операторът не може да бъде обработен.

Отговор на потребителя: Проверете дали използвате правилната дискета. Ако е необходимо, отстранете защитата от дискетата.

sqlcode: -978

sqlstate: 55009

SQL0979NCOMMIT е неуспешен за "<брой>" бази данни за приложния процес, стартиран с SYNCPOINT от NONE. Неуспехите включват следните псевдоними на бази данни и SQLSTATE двойки (могат да бъда върнати максимум четири): "<псевдоним/SQLSTATE1>", "<псевдоним/SQLSTATE2>", "<псевдоним/SQLSTATE3>", "<псевдоним/SQLSTATE4>".

Обяснение: Приложението е свързано към множество бази данни и подадената команда COMMIT е неуспешна за една или повече от тези връзки.

Потребители на обединени системи: ако базата данни, към която сте се свързали, е обединен сървър база данни, в която се използват прякори, тогава запишете промените от източника на данни, необходим за базата данни с прякора, за която действието е неуспешно.

Отговор на потребителя: В зависимост от естеството на приложението и обновените данни потребителят може да преустанови изпълнението на обработката преди завършването й и да запише неуспеха в журнала. След това може да подаде съответен SQL, за да се увери, че промените, които възнамерява да направи, ще се отразят консистентно на всички включени бази данни.

Ако целият списък от бази данни ще бъде променен от грешките при COMMIT и не може да бъде върнат, погледнете в журнала за диагностика за пълния списък.

sqlcode: -979

sqlstate: 40003

SQL0980CВъзникнала е грешка на диска. Следващите SQL изрази не могат да бъдат обработени.

Обяснение: Възникнала е грешка на диска, вследствие на която не е възможно успешното изпълнение на текущия и следващите SQL оператори. На приложната програма е забранено да задава допълнителни SQL оператори. Например, програмата за възстановяване, свързана с приложната програма, не може да подава допълнителни SQL оператори. В базата данни е необходимо възстановяване и достъпът до нея на всички приложения, които я използват, е забранен.

Операторът не може да бъде обработен.

Отговор на потребителя: Ако е възможно, запишете цялата информация за грешки от SQLCA. Спрете всички приложения, които използват базата данни. Определете дали грешката е хардуерна и извършете съответните действия, както е описано в Ръководство за отстраняване на проблеми. Стартирайте повторно базата данни. Ако възстановяването не е възможно, възстановете базата данни от резервно копие.

Ако сте в процес на инсталиране на примерна база данни, отстранете я и я инсталирайте отново.

sqlcode: -980

sqlstate: 58005

SQL0982NВъзникнала е грешка на диска. Следващите SQL оператори могат да бъдат обработени.

Обяснение: Възникнала е грешка на диска по време на обработката на временния системен файл, вследствие на което не е възможно успешното изпълнение на текущия SQL оператор. Следващите SQL оператори могат да бъдат обработени.

Операторът не може да бъде обработен.

Отговор на потребителя: Прекъснете приложението при получаване на това съобщение (SQLCODE).

sqlcode: -982

sqlstate: 58004

SQL0983NЖурналът на транзакциите не принадлежи към текущата база данни.

Обяснение: Сигнатурата, съхранена в журналния файл, не съответства на тази в базата данни. Това е често срещана грешка, когато потребителят определя, че журналният файл ще бъде записан в директория, различна от тази, в която е записана базата данни. Файлът може да бъде пренасочен.

Операторът не може да бъде обработен.

Отговор на потребителя: Подайте командата отново с правилен достъп до журналния файл.

sqlcode: -983

sqlstate: 57036

SQL0984CCOMMIT или ROLLBACK не е успешна. Следващите SQL изрази не могат да бъдат обработени.

Обяснение: Операция за комит или ролбек не може да бъде изпълнена успешно поради системна грешка. На приложната програма е забранено да задава допълнителни SQL оператори. Например, програмата за възстановяване, свързана с приложната програма, не може да подава допълнителни SQL оператори. В базата данни е необходимо възстановяване и достъпът до нея на всички приложения, които я използват, е забранен.

Операторът не може да бъде обработен.

Отговор на потребителя: Ако е възможно, запишете номера на съобщението (SQLCODE) и цялата SQLCA информация за грешки. Спрете всички приложения, които използват базата данни. Стартирайте повторно базата данни. Ако сте в процес на инсталиране на примерна база данни, отстранете я и я инсталирайте отново.

Ако възстановяването не е възможно, възстановете базата данни от резервно копие.

Ако трасирането е активно, извикайте Независимото помощно средство за трасиране от командния промпт на операционната система. Прегледайте Независимо помощно средство за трасиране в Ръководство за отстраняване на проблеми за информация за използването на тази възможност. Свържете се с вашия представител на техническия сервиз, предоставяйки следната информация:

Необходима информация:

Потребители на обединени системи: изолирайте проблема до източника на данни, който не е успял да удовлетвори заявката (направете справка с Ръководство за отстраняване на проблеми, за да определите кой източник на данни не е успял да обработи SQL оператора), и направете диагностика и изпълнете процедурите за възстановяване на база данни на този източник на данни. За различните източници процедурите за определяне на проблемите се различават, затова направете справка с ръководствата на съответните източници на данни.

sqlcode: -984

sqlstate: 58005

SQL0985CОткрита е грешка при обработка на каталозите на базата данни. Базата данни не е използваема.

Обяснение: Системата не може да се възстанови от входно-изходна грешка във файла с каталога.

Системата не може да обработи оператори като използва базата данни.

Отговор на потребителя: Възстановете базата данни от резервно копие.

Ако сте в процес на инсталиране на примерна база данни, отстранете я и я инсталирайте отново.

sqlcode: -985

sqlstate: 58005

SQL0986NОткрита е файлова грешка по време на обработка на таблица на потребителя. Таблицата не може да бъде използвана.

Обяснение: Данните в таблицата вече на са валидни.

Системата не може да обработи оператори като използва таблицата.

Отговор на потребителя: Ако базата данни не е консистентна, възстановете я от резервно копие.

Ако сте в процес на инсталиране на примерна база данни, отстранете я и я инсталирайте отново.

sqlcode: -986

sqlstate: 58004

SQL0987CНе може да бъде заделен наборът поделени памети за управление на приложения.

Обяснение: Не може да бъде заделен наборът поделени памети за управление на приложения. Причината за тази грешка може да бъде недостатъчни ресурси памет за мениджъра на базата данни или обкръжението, в което са извършени операциите. Ресурсите памет, които може да причиняват тази грешка, включват:

Отговор на потребителя: Опитайте едно или повече от следните действия:

sqlcode: -987

sqlstate: 57011

SQL0990CВъзникнала е грешка в индекса. Организирайте повторно таблицата.

Обяснение: Индексът е използван активно, така че е заето цялото пространство за индекси.

Потребители на обединени системи: тази ситуация може да бъде открита и чрез източника на данни.

Операторът не може да бъде обработен.

Отговор на потребителя: Запишете направените промени и повторете командата. Ако грешката не бъде отстранена, направете ролбек на работата си.Ако и след това има грешка, организирайте повторно таблицата.

Потребители на обединени системи: изолирайте проблема до източника на данни, който не е успял да удовлетвори заявката (направете справка с Ръководство за отстраняване на проблеми, за да определите кой източник на данни не е успял да обработи SQL оператора), и следвайте процедурите за повторно създаване на индекса за този източник на данни.

SQL0992CНомерът на версията на предкомпилираната програма е невалиден.

Обяснение: Номерът на версията на предкомпилираната програма (пакет) не съответства на номера на версията на инсталация на мениджъра на базата данни.

Предкомпилираната програма (пакет) не може да бъде използвана с текущата версия на мениджъра на базата данни. Командата не може да бъде изпълнена.

Отговор на потребителя: Използвайте само програми, които са предкомпилирани със съвместима версия на мениджъра на базата данни.

sqlcode: -992

sqlstate: 51008

SQL0993WНовата пътека към журнала (newlogpath) в конфигурационния файл на базата данни е невалидна.

Обяснение: Пътеката към журналния файл е невалидна поради една от следните причини.:

Исканата промяна не е направена.

Отговор на потребителя: За да промените пътеката към журналния файл, задайте команда с валидна стойност в конфигурацията на базата данни.

sqlcode: +993

sqlstate: 01562

SQL0994NНеправилна употреба на точка на запис на приложението.

Обяснение: Функцията в точката на запис на приложението е използвана неправилно. Програмата е направила опит да изпълни едно от следните действия:

Функцията не може да бъде обработена.

Отговор на потребителя: Коригирайте използването на точката за запис в програмата.

SQL0995WТекущата пътека към журналния файл (logpath) е невалидна. Пътеката към журналния файл е върната към подразбиращата се.

Обяснение: Пътеката към журналния файл е невалидна поради една от следните причини.:

Журналният файл е създаден в пътеката по подразбиране, за да се осъществи припокриване на записите в журнала. Следващият журнален файл е създаден в пътеката по подразбиране за архивния журнал. Исканата промяна не е направена.

Отговор на потребителя: За да промените пътеката към журналния файл, задайте команда с валидна стойност в конфигурацията на базата данни.

sqlcode: +995

sqlstate: 01563

SQL0996NНе е възможно освобождаването на страници за обект в пространството за таблица.

Обяснение: Съществуват повредени страници в базата данни или вътрешна логическа грешка в пространството за таблици. Повече подробности може да откриете в системния журнал и/или в журнала за съобщения за грешки на мениджъра на базата данни.

Отговор на потребителя: Преустановете използването на обекта или пространството за таблици. Свържете се със сервиза на IBM за проверка на обекта и пространството за таблици.

sqlcode: -996

sqlstate: 58035

SQL0997WОбщо информационно съобщение за обработка на транзакцията. Код на причина = "<XA-код-на-причина>".

Обяснение: SQLCODE 997 се подава само между компоненти на мениджъра на базата данни и не се връща на приложението. Той се използва за съхранение на XA върнатите кодове за ситуации без грешки. Възможните кодове за причина са следните:

Отговор на потребителя: Не е необходимо действие.

SQL0998NОткрита е грешка по време на транзакция или на евристична обработка. Код на причината = "<код-на-причина>" Подкод = "<подкод>".

Обяснение: Открита е грешка при обработка на разпределена транзакция. Транзакцията:

Възможните кодове за причина (съответстващи на X/Open XA кодове за причина са показани в скоби) са:

Отговор на потребителя: За код на причина от 1 до 8 ще бъде направен запис в системния журнал, защото SQLCA вероятно няма да бъде върнат в отговор на извикващата програма.

Ако грешката се дължи на неуспех при получаване на информация от източника на данни, свързан с прякор, мястото на неуспешния източник на данни ще се появява винаги в системния журнал на обединения сървър.

За код на причина 4, проверете съдържанието на низа xa open и направете необходимите корекции.

За код на причина 9, подкод 02, проверете дали конфигурационният параметър tp_mon_name съдържа име на динамична библиотека във външния продукт. В продукта има функция ax_reg(), използвана за динамична регистрация на транзакции.

За код на причината 14, уверете се, че MSDTC услугата е активна.

За код на причина 35 - извършете евристична операция върху база данни, която участва в глобалната транзакция като мениджър на ресурсите само за четене. Примери са всички DRDA бази данни като DB2 в MVS. Тези бази данни от тип, различен от XA, не могат да имат ХА транзакции под съмнение.

За кодове на причина 36, 37 и 38 - опитали сте се да изпълните невалидна евристична операция за транзакция под съмнение. Или сте задали грешен XID, или се е изпълнявала евристична операция или операция за повторна синхронизация, докато сте записвали този XID. Изпълнете евристична заявка, за да получите текущия списък на транзакциите под съмнение. В списъка може да проверите дали още има нужда от изпълнението на евристичната операция.

За код на причина 39 - определеният XID е за транзакция, която е приключила и чака началото на двуфазов процес на записване на промените. Може да изпълните евристични операции само върху транзакции, които са записани чрез двуфазов протокол и са станали транзакции под съмнение.

За код на причина 40 - SQL оператор е подаден при неуспешна транзакция. Пример за това е подаване на SQL оператор в нишка на транзакция, която е успешно регистрирана след здраво свързана нишка, участието й в същата транзакция се преустановява аварийно.

За код на причината 41 може да намерите повече информация за проблема във файла db2diag.log. Трябва да рестартирате DB2 на възлите, където не е стартирана. Може да бъде необходимо да се свържете със системния администратор за помощ.

За код на причина 69 - Мениджърът на транзакциите (TM) и/или мениджърът на ресурсите (RM) на базата данни се различават от този, който генерира транзакцията под съмнение. С други думи имената на TM или RM на базата данни могат да указват различни потребителски модели на базата данни. Несъответствието с ID на журнала вероятно е поради:

За код на причина 85 - обновявате множество източници на данни и в някои от тях е извършен евристичен ролбек или комит. В резултат в транзакцията има частичен комит или ролбек. В този случай данните са в неконсистентно състояние. Необходимо е ръчно да проверите всеки източник на данни, обновен от транзакцията, за да коригирате данните.

За код на причината 210 - някои от възлите са вече в състояние на комит. Трябва да направите евристичен комит, за да разрешите транзакциите под съмнение.

За код на причина 221, уверете се, че всички приложения, които участват в същата XA транзакция, използват същия потребителски идентификатор, за да се свържат към базата данни.

За код на причина 222, уверете се, че всички приложения, които участват в същата XA транзакция, използват същия CCSID.

За код на причина 223, модифицирайте приложението и настройката на клиента да използва локални клиенти или за отдалечени клиенти използвайте TCPIP като комуникационен протокол, за да се свържете към шлюза.

За код на причина 224, обновете клиента с версия 7.1 или по-нова.

Обща информация за процедурата на събиране:

Ако не можете да разрешите проблема, определен чрез кода на причината, запишете номера на съобщението (SQLCODE), кода на причината и евентуално подкода в съобщението или SQLCA от системния журнал.

Ако причината за отказа е в обединената база данни, трябва да запишете и мястото на неуспешния източник на данни, което се намира в системния журнал на обединения сървър.

Ако трасирането е активно, извикайте Независимото помощно средство за трасиране от командния промпт на операционната система. Прегледайте Независимо помощно средство за трасиране в Ръководство за отстраняване на проблеми за информация за използването на тази възможност. Свържете се с вашия представител на техническия сервиз, като подготвите следната информация:

Вероятно може да намерите допълнителна информация в конзолата или журналите за съобщения на мениджъра на транзакциите и мениджъра на бази данни.

sqlcode: -998

sqlstate: 58005


[ Начало на страницата | Предишна страница | Следваща страница ]