Software & Solution

DB 에러 로그 정보

누한 2017. 12. 27. 01:58
반응형

안녕하세요 이번 소개는 예전~~~


제가 정리했던 내용입니다.


바로 DB 에러 로그 정보 입니다.


무슨 말이냐...


제가 IT쪽에 종사를 하다보니 전문 솔루션을 조금씩 다양하게 ( 일명 잡다구리 ㅡㅡ; ) 하게 많이 만지게 됐습니다.


그중에서 DB 영역은 언제나 저에게는 힘든 영역이였죠...


특히 2페이지 분량의 30초 걸리던 쿼리를 어떤 DBA분계써 튜닝 작업하고 2초만에 결과 나온것은 저에게는 하나의 기적이였죠 ㅎㅎㅎㅎ


머... 사설은 이만 접고....


DB를 사용하다 보면 다양한 에러 코드를 접하게 됩니다. 


가장 많이 나오는 몇개는 다들 알고 있으시겠지만, 급하게 에러 로그를 찾아야 되는 경우 이걸 어디서 어떻게 찾아야 되는지에 대해서 헤매게 됩니다.


저역기 이런 경우가 많았고 그래서 이런 에러 코드만을 따로 모아서 갖고 있었습니다.


저의 예전 네이버 블로그에 내용이 있었는데 오늘 이곳에 함께 공유 합니다.


아마도 이런 내용은 많은 분이 찾을것 같진 않지만... 없으면 찾게 되는 녀석이라 생각되어 공유 합니다.


내용이 조금은 많고 길어서 보시기 힘들지도 ..... 이해해 주시기 바랍니다.


원래 이런 에러 로그가 그렇습니다. ^^;

==============================================




SQL0200 - SQL0299

SQL0203N
컬럼 name에 대한 참조가 명확하지 않습니다.
설명:

명령문에 컬럼 name이(가) 사용되었고, 참조할 수 있는 컬럼이 둘 이상 있습니다. 이는 다음의 결과일 수 있습니다.

  • FROM절에 동일한 이름의 컬럼을 가진 두 개의 테이블이 지정되었습니다.
  • ORDER BY절이 선택 목록에서 둘 이상의 컬럼에 적용되는 이름을 참조합니다.
  • CREATE TRIGGER문의 주제 테이블 컬럼에 대한 참조가 새 전이 변수를 참조하는지 또는 기존 전이 변수를 참조하는지를 나타내기 위해 상관 이름을 사용하지 않습니다.

가능한 테이블 컬럼을 설정하려면 컬럼 이름에 추가 정보가 필요합니다.

명령문을 처리할 수 없습니다.

사용자 응답:

컬럼 이름에 규정자를 추가하십시오. 규정자는 테이블 이름이거나 상관 이름입니다. 컬럼은 선택 목록에서 이름을 바꾸어야 합니다.

sqlcode : -203

sqlstate : 42702

SQL0204N
name은(는) 정의되지 않은 이름입니다.
설명:

이 오류는 다음 원인 중 하나에 의해 발생합니다.

  • 데이터베이스에 name(으)로 식별되는 오브젝트가 정의되어 있지 않습니다.
  • 데이터 유형이 사용 중입니다. 이 오류는 다음 원인으로 발생할 수 있습니다.
    • name이(가) 규정되어 있는 경우, 이 이름의 데이터 유형이 데이터베이스에 존재하지 않습니다.
    • name이(가) 규정되지 않은 경우, 사용자의 함수 경로에 원하는 데이터 유형이 속하는 스키마가 들어 있지 않은 것입니다.
    • 데이터 유형이 패키지가 바인드된 시간 이전의 작성 시간소인을 가진 데이터베이스에 없습니다(정적 명령문에 적용됨).
    • 데이터 유형이 CREATE TYPE문의 UNDER절에 있는 경우, 유형 이름은 정의되는 유형과 같을 수 있으며, 이것은 유효하지 않습니다.
  • 함수는 다음 중 하나에서 참조됩니다.
    • DROP FUNCTION문
    • COMMENT ON FUNCTION문
    • CREATE FUNCTION문의 SOURCE절

      name이(가) 규정되어 있는 경우, 함수가 존재하지 않습니다. name이(가) 규정되지 않은 경우, 이러한 이름의 함수가 현재 함수 경로의 어떤 스키마에도 없습니다. 함수는 COALESCE, NULLIF 또는 VALUE 내장 함수에서 전래될 수 없습니다.

이 리턴 코드는 모든 유형의 데이터베이스 오브젝트에 대해 생성될 수 있습니다.

페더레이티드 시스템 사용자: 데이터베이스에 name(으)로 식별되는 오브젝트가 정의되어 있지 않거나 name이(가) DROP NICKNAME문에서 별칭이 아닙니다.

일부 데이터 소스는 name에 적절한 값을 제공하지 않습니다. 이러한 경우, 메시지 토큰의 형식은 『OBJECT:<data source> TABLE/VIEW』이며, 이는 지정된 데이터 소스의 실제 값을 알 수 없음을 나타냅니다.

명령문을 처리할 수 없습니다.

사용자 응답:

SQL문에 오브젝트 이름(필수 규정자 포함)이 올바르게 지정되었으며 이 이름이 존재하는지 확인하십시오. SOURCE절에 데이터 유형이나 함수가 누락된 경우, 오브젝트가 존재하지 않을 수 있습니다. 또는 오브젝트가 일부 스키마에 존재하지만, 이 스키마가 사용자의 함수 경로에 존재하지 않을 수 있습니다.

페더레이티드 시스템 사용자: 명령문이 DROP NICKNAME인 경우, 오브젝트가 실제 별칭인지 확인하십시오. 오브젝트가 페더레이티드 데이터베이스 또는 데이터 소스에 존재하지 않을 수도 있습니다. 페더레이티드 데이터베이스 오브젝트(있는 경우) 및 데이터 소스 오브젝트(있는 경우)가 존재하는지 확인하십시오.

sqlcode : -204

sqlstate : 42704

SQL0205N
컬럼 또는 속성 name이(가) object-name에 정의되어 있지 않습니다.
설명:

object-name이(가) 테이블 또는 뷰인 경우, name은(는) object-name에 정의되지 않은 컬럼입니다. object-name이(가) 구조화된 유형인 경우, name은(는) object-name에 정의되지 않은 속성입니다.

페더레이티드 시스템 사용자: object-name이(가) 별명을 참조할 수 있습니다.

명령문을 처리할 수 없습니다.

사용자 응답:

object-name이(가) 테이블이나 뷰인 경우, 컬럼과 테이블 또는 뷰 이름(필수 규정자 포함)이 SQL문에 올바르게 지정되었는지 확인하십시오. object-name이(가) 구조화된 유형인 경우, 속성과 유형 이름(필수 규정자 포함)이 SQL문에 올바르게 지정되었는지 확인하십시오.

또한 REORG 또는 IMPORT 중에 이 오류를 수신하는 경우, 인덱스의 컬럼 이름이 관리 안내서에 정의된 대로 데이터베이스 관리 프로그램 이름 지정 규칙을 위반할 수도 있습니다.

sqlcode : -205

sqlstate : 42703

SQL0206N
name이(가) 사용된 컨텍스트에서 유효하지 않습니다.
설명:

다음과 같은 경우에 이 오류가 발생할 수 있습니다.

  • INSERT문 또는 UPDATE문의 경우, 지정된 컬럼이 삽입 또는 갱신 오브젝트로 식별된 뷰 또는 테이블 컬럼이 아닙니다.
  • SELECT문 또는 DELETE문의 경우, 지정된 컬럼이 명령문의 FROM절에 지정된 뷰 또는 테이블 컬럼이 아닙니다.
  • ORDER BY절의 경우, 지정된 컬럼이 subselect 내의 상관 컬럼 참조이지만, 이는 허용되지 않습니다.
  • CREATE TRIGGER, CREATE METHOD 또는 CREATE FUNCTION문의 경우,
    • 참조 name이(가) 컬럼, 로컬 변수 또는 전이 변수의 이름으로 분석되지 않습니다.
    • SIGNAL문에 지정된 조건 이름 name이(가) 선언되지 않았습니다.
  • CREATE TRIGGER문의 경우,
    • OLD 또는 NEW 상관 이름을 사용하지 않고 주제 테이블의 컬럼을 참조합니다.
    • 트리거 조치에 있는 SET 전이 변수 명령문의 지정문 왼쪽에서 새 전이 변수만 지원되는 위치에 기존 전이 변수를 지정합니다.
  • PREDICATES절이 있는 CREATE FUNCTION문의 경우,
    • SQL 함수의 RETURN문이 매개변수가 아닌 변수 또는 RETURN문의 범위 내에 있는 다른 변수를 참조합니다.
    • FILTER USING절은 WHEN절의 매개변수 이름 또는 표현식 이름이 아닌 변수를 참조합니다.
    • 인덱스 작성 규칙에서 검색 목표가 작성 중인 함수의 몇몇 매개변수 이름과 일치하지 않습니다.
    • 인덱스 작성 규칙에서 검색 목표가 작성 중인 함수의 매개변수 이름 또는 EXPRESSION AS절의 표현식 이름과 일치하지 않습니다.
  • CREATE INDEX EXTENSION문의 경우, RANGE THROUGH절 또는 FILTER USING절은 절에 사용할 수 있는 매개변수 이름이 아닌 변수를 참조합니다.

명령문을 처리할 수 없습니다.

사용자 응답:

SQL문에 이름이 올바르게 지정되었는지 확인하십시오. SELECT문의 경우, 필요한 모든 테이블이 FROM절에서 이름이 지정되는지 확인하십시오. ORDER BY절 내의 subselect의 경우, 상관 컬럼 참조가 없는지 확인하십시오. 테이블에 상관 이름이 사용된 경우, 후속 참조에서 테이블 이름이 아닌 상관 이름을 사용하는지 확인하십시오.

CREATE TRIGGER문의 경우, SET 전이 변수 명령문의 지정문 왼쪽에 새 전이 변수만 지정되었고, 주제 테이블의 컬럼 참조에 상관 이름이 지정되어 있는지 확인하십시오.

sqlcode : -206

sqlstate : 42703

SQL0207N
집합 연산자와 함께 사용된 SELECT문의 ORDER BY절에는 컬럼 이름이 허용되지 않습니다.
설명:

집합 연산자가 있는 SELECT문에 컬럼 이름을 지정하는 ORDER BY절이 들어 있습니다. 이 경우, ORDER BY절의 컬럼 목록에는 정수만 포함되어야 합니다.

명령문을 처리할 수 없습니다.

사용자 응답:

ORDER BY절의 컬럼 목록에 정수만 지정하십시오.

주: 이 오류는 버전 2 이전의 DB2 릴리스와 DB2 Connect를 통해 액세스된 호스트에만 적용됩니다.

sqlcode : -207

sqlstate : 42706

SQL0208N
컬럼 name이(가) 결과 테이블의 일부가 아니므로 ORDER BY절이 유효하지 않습니다.
설명:

ORDER BY 목록에 지정된 컬럼 name이 SELECT 목록에 지정되지 않았고 결과 테이블에 없으므로, 명령문이 유효하지 않습니다. SELECT문의 fullselect가 subselect가 아닐 때 결과 테이블의 컬럼만 결과를 순서대로 정렬하는 데 사용할 수 있습니다.

명령문을 처리할 수 없습니다.

사용자 응답:

명령문의 구문을 정정하려면, 지정된 컬럼을 결과 테이블에 추가하거나 ORDER BY절에서 컬럼을 삭제하십시오.

sqlcode : -208

sqlstate : 42707

SQL0212N
name은(는) 중복된 테이블 지정자이거나, 트리거 정의의 REFERENCING절에 두 번 이상 지정되었습니다.
설명:

name(으)로 지정된 표시된 테이블, 뷰, 별명 또는 상관 이름이 같은 FROM절의 또다른 표시된 테이블, 뷰, 별명 또는 상관 이름과 일치합니다.

명령문이 CREATE TRIGGER인 경우, REFERENCING절이 주제 테이블과 같은 이름을 지정했거나, 둘 이상의 OLD 또는 NEW 상관 이름 또는 둘 이상의 NEW_TABLE 또는 OLD_TABLE ID에 대해 동일한 이름을 갖습니다.

명령문을 처리할 수 없습니다.

사용자 응답:

SELECT문의 FROM절을 다시 작성하십시오. 표시된 테이블, 뷰, 별명 또는 상관 이름이 FROM절의 다른 표시된 테이블, 뷰, 별명 또는 상관 이름과 일치하지 않도록 상관 이름을 테이블, 뷰 또는 별명 이름과 연관시키십시오.

CREATE TRIGGER문의 경우, REFERENCING절의 이름을 변경하여 이름이 중복되지 않도록 하십시오.

sqlcode : -212

sqlstate : 42712

SQL0214N
다음 위치에 있는 ORDER BY절의 표현식 또는 clause-type절에서 expression-start-or-order-by-position(으)로 시작하는 표현식이 유효하지 않습니다. 이유 코드 = reason-code.
설명:

clause-type절에 있는 표현식 expression-start-or-order-by-position의 첫 번째 부분으로 식별되는 표현식이 다음과 같이 reason-code에 지정된 이유로 인해 유효하지 않습니다.

1
SELECT문의 fullselect는 subselect가 아닙니다. ORDER BY절에서는 이런 유형의 SELECT문에 표현식이 허용되지 않습니다. 이 이유 코드는 clause-type이(가) ORDER BY일 경우에만 발생합니다.
2
DISTINCT가 select절에 지정되었으나 표현식이 선택 목록 내의 표현식과 정확하게 일치하지 않을 수 있습니다. 이 이유 코드는 clause-type이(가) ORDER BY일 경우에만 발생합니다.
3
ORDER BY절에 컬럼 함수가 존재하므로 그룹화가 수행되었습니다. 이 이유 코드는 clause-type이(가) ORDER BY일 경우에만 발생합니다.
4
GROUP BY절의 표현식에는 스칼라 fullselect가 포함될 수 없습니다. 이 이유 코드는 clause-type이(가) GROUP BY일 경우에만 발생합니다.
5
GROUP BY절의 비참조 연산자 왼쪽은 가변 함수가 될 수 없습니다. 이 이유 코드는 clause-type이(가) GROUP BY일 경우에만 발생합니다.

명령문을 처리할 수 없습니다.

사용자 응답:

다음과 같이 reason-code에 지정된 이유에 따라 SELECT문을 수정하십시오.

1
ORDER BY절에서 표현식을 제거하십시오. 결과 컬럼을 참조하려는 경우, 정렬 키를 단순 정수나 단순 컬럼 이름 형태로 변경하십시오.
2
select절에서 DISTINCT를 제거하거나 정렬 키를 단순 정수나 단순 컬럼 이름 형태로 변경하십시오.
3
GROUP BY절을 추가하거나 ORDER BY절에서 컬럼 함수를 제거하십시오.
4
GROUP BY절에서 모든 스칼라 fullselect를 제거하십시오. 스칼라 fullselect에 기초한 결과 컬럼의 그룹화를 원하는 경우, 중첩 테이블 표현식이나 공통 테이블 표현식을 사용하여 먼저 결과 테이블에 결과 컬럼으로 표현식을 제공하십시오.
5
GROUP BY절의 비참조 연산자 왼쪽에서 가변 함수를 제거하십시오.

sqlcode : -214

sqlstate : 42822

SQL0216N
술어 연산자의 양쪽에 있는 요소의 수가 일치하지 않습니다. 술어 연산자는 predicate-operator입니다.
설명:

술어에는 술어 연산자의 오른쪽이나 왼쪽(또는 양쪽 모두)에 요소 목록이 포함됩니다. 양쪽에 있는 요소의 수는 동일해야 합니다. 이러한 요소는 괄호로 묶인 표현식 목록에 나타나거나 fullselect에 있는 선택 목록의 요소로 나타납니다.

명령문을 처리할 수 없습니다.

사용자 응답:

술어 연산자의 양쪽에서 불일치하는 요소의 수를 갖는 술어를 정정하십시오.

sqlcode : -216

sqlstate : 428C4

SQL0217W
Explain 정보 요청만 처리 중이므로 명령문이 실행되지 않았습니다.
설명:

Explain 특수 레지스터 중 하나의 현재 값이 EXPLAIN으로 설정되었습니다. 이 값으로 동적 SQL문을 준비하여 Explain할 수 있지만, 동적 명령문을 실행할 수는 없습니다.

사용자 응답:

이 상태를 발견한 인터페이스나 응용프로그램에서 적절한 SET문을 발행하여 해당 Explain 특수 레지스터의 값을 EXPLAIN이 아닌 다른 설정값으로 변경하십시오.

sqlcode : +217

sqlstate : 01604

SQL0219N
필수 Explain 테이블 name이(가) 없습니다.
설명:

Explain 기능을 호출했으나, 필수 Explain 테이블 name을(를) 찾을 수 없습니다. Explain 테이블은 Explain을 호출하기 전에 작성해야 합니다.

사용자 응답:

필수 Explain 테이블을 작성하십시오. Explain 테이블을 작성하는 데 필요한 SQL DDL문은 sqllib 아래의 misc 디렉토리에 있는 EXPLAIN.DDL 파일에서 사용 가능합니다.

sqlcode : -219

sqlstate : 42704

SQL0220N
Explain 테이블 name, 컬럼 name2에는 정의가 적절하지 않거나 누락되었습니다.
설명:

Explain 기능을 호출했으나 Explain 테이블 name에 예상되는 정의가 없습니다. 다음과 같은 이유로 정의가 올바르지 않을 수 있습니다.

  • 정의된 컬럼 수가 올바르지 않습니다( name2이(가) 숫자인 경우).
  • 컬럼에 지정된 데이터 유형이 올바르지 않습니다( name2이(가) 컬럼 이름인 경우).
  • 테이블에 대해 CCSID가 올바르지 않습니다.
사용자 응답:

지정된 Explain 테이블의 정의를 정정하십시오. Explain 테이블을 작성하는 데 필요한 SQL DDL문은 sqllib 아래의 misc 디렉토리에 있는 EXPLAIN.DDL 파일에서 사용 가능합니다.

sqlcode : -220

sqlstate : 55002

SQL0222N
커서 cursor-name을(를) 사용하는 홀(hole)에 대해 조작이 시도되었습니다.
설명:

SQLSTATE가 24510이면, 오류가 발생한 것입니다. 위치가 지정된 갱신 또는 삭제가 커서 cursor-name(으)로 시도되었습니다. DB2가 커서 cursor-name에 대한 결과 테이블의 현재 행에 해당하는 데이터베이스의 행 및 더 이상 존재하지 않는 기본 테이블의 해당 행을 갱신하거나 삭제하려고 할 때 홀(hole)이 발생했습니다.

SQLSTATE가 02502이면, 경고입니다. 커서 cursor-name에 대한 페치를 처리하는 동안 삭제 홀(hole) 또는 갱신 홀(hole)이 발견되었습니다. DB2가 커서 cursor-name에 대한 결과 테이블의 현재 행에 해당하는 데이터베이스의 행 및 더 이상 존재하지 않는 기본 테이블의 해당 행을 다시 페치하려고 할 때 홀(hole)이 발생했습니다. 데이터가 리턴되지 않았습니다.

기본 테이블의 해당 행이 삭제되면 삭제 홀(hole)이 발생합니다.

갱신 홀(hole)은 기본 테이블의 해당 행이 기본 테이블에서 갱신된 경우, 갱신된 행이 커서의 SELECT문에 지정된 검색 조건을 더 이상 만족시키지 않을 때 발생합니다.

명령문을 처리할 수 없습니다. 커서는 홀(hole)에 위치한 상태로 남아 있습니다.

사용자 응답:

FETCH문을 발행하여 커서를 홀(hole)이 아닌 행에 위치시키십시오.

sqlcode : -222

sqlstate : 02502, 24510

SQL0224N
결과 테이블이 커서 cursor-name을(를) 사용하는 기본 테이블과 일치하지 않습니다.
설명:

위치 지정된 UPDATE 또는 DELETE가 SENSITIVE STATIC으로 정의된 커서 cursor-name을(를) 사용하여 결과 테이블의 컬럼 값이 기본 테이블 행의 현재값과 일치하지 않는 행에서 시도되었습니다. 기본 테이블의 행이 결과 테이블로 페치된 시간과 위치 지정된 UPDATE 또는 DELETE가 처리된 시간 사이에 갱신되었으므로 이 행이 일치하지 않습니다.

명령문을 처리할 수 없습니다. 커서 위치가 변경되지 않습니다.

사용자 응답:

분리 레벨을 변경하여 기본 테이블 행이 커서 조작 중에 다시 갱신되지 않도록 하거나, 응용프로그램을 변경하여 FETCH INSENSITIVE를 수행하고 위치 지정된 UPDATE 또는 DELETE를 다시 시도하십시오.

sqlcode : -224

sqlstate : 24512

SQL0225N
커서가 SCROLL로 정의되지 않았으므로 커서 cursor-name에 대한 FETCH문이 유효하지 않습니다.
설명:

스크롤 불가 커서 cursor-name에 대한 FETCH문이 PRIOR, FIRST, LAST, BEFORE, AFTER, CURRENT, ABSOLUTE 또는 RELATIVE와 같은 화면 이동 커서 키워드 중 하나를 사용하여 지정되었습니다. 스크롤 불가 커서에 대해서는 NEXT만 지정할 수 있습니다. 데이터가 페치되지 않습니다.

명령문을 처리할 수 없습니다. 커서 위치가 변경되지 않습니다.

사용자 응답:

FETCH문을 변경하여 PRIOR 또는 FIRST와 같은 현재 페치 방향 키워드를 제거하고 이를 NEXT로 바꾸십시오. 또는 커서의 정의를 화면 이동 커서로 변경하십시오.

sqlcode : -225

sqlstate : 42872

SQL0227N
커서 cursor-name에 알 수 없는 위치( sqlcode, sqlstate)가 있으므로 FETCH NEXT, PRIOR, CURRENT 또는 RELATIVE가 허용되지 않습니다.
설명:

cursor-name의 커서 위치를 알 수 없습니다. 커서 cursor-name에 대해 이전의 다중 행 FETCH로 인해 검색된 다중 행을 처리하는 중에 오류(SQLCODE sqlcode, SQLSTATE sqlstate)가 발생했습니다. 커서 위치를 알 수 없는 상태에서 이 오류로 인해 하나 이상의 요청된 행이 프로그램에 리턴되지 않습니다.

표시기 구조가 이전의 다중 행 FETCH에 제공되지 않은 경우, 양수 SQLCODE와 검색된 모든 행이 응용프로그램에 리턴되지 않았습니다.

명령문을 처리할 수 없습니다. 커서 위치가 변경되지 않습니다.

사용자 응답:

위치를 재설정하려면 커서를 닫고 다시 여십시오. 화면 이동 커서의 경우, FIRST, LAST, BEFORE, AFTER 또는 ABSOLUTE와 같은 다른 페치 방향 중 하나를 지정하도록 FETCH문을 변경하여 유효한 커서 위치를 설정하고 데이터 행을 페치할 수 있습니다.

sqlcode : -227

sqlstate : 24513

SQL0228N
읽기 전용 커서 cursor-name에 대해 FOR UPDATE절이 지정되었습니다.
설명:

커서 cursor-name이(가) INSENSITIVE SCROLL로 정의되었지만, 해당 SELECT문에 FOR UPDATE절이 들어 있습니다.

명령문을 처리할 수 없습니다.

사용자 응답:

읽기 전용 커서를 정의하려면 DECLARE CURSOR에 INSENSITIVE를 지정하십시오. 단, FOR UPDATE절을 커서의 SELECT문의 일부로 지정하지 마십시오.

sqlcode : -228

sqlstate : 42620

SQL0231W
커서 cursor-name의 현재 위치가 현재 행의 FETCH에 유효하지 않습니다.
설명:

FETCH CURRENT 또는 FETCH RELATIVE 0문이 화면 이동 커서 cursor-name에 대해 발행되었습니다. 커서가 결과 테이블 행에 위치하고 있지 않으므로 조작이 유효하지 않습니다. 현재 행의 FETCH는 FETCH BEFORE 또는 FETCH AFTER문 다음이나 결과 SQLCODE +100을 초래하는 FETCH문 다음에 사용할 수 없습니다.

명령문을 처리할 수 없습니다. 커서 위치가 변경되지 않습니다.

사용자 응답:

커서가 현재 행을 페치하기 전에 결과 테이블의 행에 위치하고 있는지 확인하십시오.

sqlcode : +231

sqlstate : 02000

SQL0236W
SQLDA는 integer1개의 SQLVAR 항목만 제공했습니다. integer2개의 SQLVAR 항목이 integer3 컬럼에 필요합니다. SQLVAR 항목이 설정되지 않았습니다.
설명:

SQLDA의 SQLN 필드 값은 최소한 결과 세트의 컬럼 수만큼 커야 합니다.

데이터베이스 관리 프로그램이 어떠한 SQLVAR 항목도 설정하지 않았습니다. (그리고 SQLDOUBLED 플래그가 "OFF"(즉, 공백 문자)로 설정되었습니다.)

사용자 응답:

SQLDA의 SQLN 필드 값을 메시지에 표시된 값으로 늘린 다음(SQLDA가 이 양을 지원할 만큼 충분히 큰지 확인하여) 명령문을 다시 제출하십시오.

sqlcode : +236

sqlstate : 01005

SQL0237W
SQLDA는 integer1개의 SQLVAR 항목만 제공했습니다. 설명되는 컬럼 중 최소한 하나가 구별 유형이므로, integer2개의 SQLVAR 항목을 지정해야 합니다. 2차 SQLVAR 항목이 설정되지 않았습니다.
설명:

결과 세트 컬럼 중 최소한 하나가 구별 유형이므로, 결과 세트 컬럼 수의 두 배가 되는 SQLVAR 항목에 스페이스를 제공해야 합니다. 데이터베이스 관리 프로그램이 기본 SQLVAR 항목만 설정했습니다. (그리고 SQLDOUBLED 플래그가 "OFF"(즉, 공백 문자)로 설정되었습니다.)

사용자 응답:

결과 세트의 구별 유형에 대한 추가 정보가 필요 없는 경우, 어떤 조치도 필요하지 않습니다. 구별 유형 정보가 필요한 경우, SQLDA의 SQLN 필드 값을 메시지에 표시된 값으로 늘린 다음(SQLDA가 이 양을 지원할 만큼 충분히 큰지 확인한 후) 명령문을 다시 제출해야 합니다.

sqlcode : +237

sqlstate : 01594

SQL0238W
SQLDA는 integer1개의 SQLVAR 항목만 제공했습니다. 설명되는 컬럼 중 최소한 하나가 LOB 또는 구조화된 유형이므로, integer2개의 SQLVAR 항목이 integer3 컬럼에 필요합니다. SQLVAR 항목이 설정되지 않았습니다.
설명:

결과 세트 컬럼 중 최소한 하나가 LOB 또는 구조화된 유형이므로, 결과 세트 컬럼 수의 두 배가 되는 SQLVAR 항목에 스페이스를 제공해야 합니다. 또한 결과 세트 컬럼 중 하나 이상이 구별 유형일 수도 있음에 유의하십시오.

데이터베이스 관리 프로그램이 어떠한 SQLVAR 항목도 설정하지 않았습니다. (그리고 SQLDOUBLED 플래그가 "OFF"(즉, 공백 문자)로 설정되어 있습니다.)

사용자 응답:

SQLDA의 SQLN 필드 값을 메시지에 표시된 값으로 늘린 다음(SQLDA가 이 양을 지원할 만큼 충분히 큰지 확인한 후) 명령문을 다시 제출하십시오.

sqlcode : +238

sqlstate : 01005

SQL0239W
SQLDA는 integer1개의 SQLVAR 항목만 제공했습니다. 설명되는 컬럼 중 최소한 하나가 구별 유형 또는 참조 유형이므로, integer2개의 SQLVAR 항목이 integer3 컬럼에 필요합니다. SQLVAR 항목이 설정되지 않았습니다.
설명:

결과 세트 컬럼이 구별 유형 또는 참조 유형인 경우, 결과 세트 컬럼 수의 두 배가 되는 SQLVAR 항목에 스페이스를 제공해야 합니다.

데이터베이스 관리 프로그램이 어떠한 SQLVAR 항목도 설정하지 않았습니다. (그리고 SQLDOUBLED 플래그가 "OFF"(즉, 공백 문자)로 설정되어 있습니다.)

사용자 응답:

구별 유형 또는 참조 유형 정보가 필요한 경우, SQLDA의 SQLN 필드 값을 메시지에 표시된 값으로 늘린 다음(SQLDA가 이 양을 지원할 만큼 충분히 큰지 확인한 후) 명령문을 다시 제출해야 합니다. 결과 세트의 구별 유형 또는 참조 유형에 대한 추가 정보가 필요하지 않으면, 결과 세트 컬럼 수를 수용할 만큼 충분한 SQLVAR 항목만 제공하여 명령문을 다시 제출할 수도 있습니다.

sqlcode : +239

sqlstate : 01005

SQL0242N
유형이 object-type인 오브젝트 object-name이(가) 오브젝트 목록에 두 번 이상 지정되었습니다.
설명:

유형 object-type의 오브젝트 이름 목록에서 오브젝트 object-name이(가) 두 번 이상 지정되었습니다. 오브젝트에서 명령문 조작을 두 번 이상 수행할 수 없습니다.

사용자 응답:

중복되는 오브젝트 어커런스를 제거하여 목록에서 중복된 오브젝트를 정정하십시오.

sqlcode : -242

sqlstate : 42713

SQL0243N
SENSITIVE 커서 cursor-name은(는) 지정된 SELECT문에 정의할 수 없습니다.
설명:

커서 cursor-name이(가) SENSITIVE로 정의되었습니다. 그러나 SELECT문의 내용은 DB2가 커서의 임시 결과 테이블을 빌드하도록 요구하며, DB2는 이 커서 외부에서 작성된 변경사항이 표시될 것을 보장할 수 없습니다. 이러한 상황은 쿼리의 내용이 결과 테이블을 읽기 전용으로 만들 때 발생합니다. 예를 들어, 쿼리에 조인이 포함되면 결과 테이블은 읽기 전용이 됩니다. 또한 SQL 데이터 변경 명령문에서 선택한 경우에도 발생합니다. 이 경우, 커서는 INSENSITIVE 또는 ASENSITIVE로 정의되어야 합니다.

명령문을 처리할 수 없습니다.

사용자 응답:

읽기 전용이 아닌 결과 테이블을 만들도록 쿼리 내용을 변경하거나, 커서 유형을 INSENSITIVE 또는 ASENSITIVE로 변경하십시오.

sqlcode : -243

sqlstate : 36001

SQL0244N
FETCH에 지정된 SENSITIVITY sensitivity이(가) 커서 cursor-name에 유효하지 않습니다.
설명:

FETCH에 지정된 민감도 옵션 sensitivity이(가) 커서 cursor-name에 적용되는 민감도 옵션과 충돌합니다. 다음 목록은 FETCH에 지정할 수 있는 옵션입니다.

 
DECLARE CURSOR       FETCH문 
INSENSITIVE         INSENSITIVE
SENSITIVE STATIC    SENSITIVE 또는 INSENSITIVE
SENSITIVE DYNAMIC   SENSITIVE
SENSITIVE           SENSITIVE
ASENSITIVE          INSENSITIVE 또는 SENSITIVE
                    (커서에 유효한 민감도에 따라)

스크롤 불가 커서에 대해서는 민감도 옵션을 지정할 수 없습니다.

명령문을 처리할 수 없습니다.

사용자 응답:

FETCH에 지정된 민감도 옵션을 변경하거나 제거하십시오.

sqlcode : -244

sqlstate : 428F4

SQL0257N
원시 디바이스(Raw DEVICE) 컨테이너는 지원되지 않습니다.
설명:

디바이스 컨테이너를 사용하려고 했지만 다음 조건 중 하나가 참입니다.

  • 원시 디바이스는 현재 이 플랫폼에서 지원되지 않습니다.
  • 자동 크기 조정 테이블 스페이스의 SET TABLESPACE CONTAINERS 명령을 통해서는 원시 디바이스(Raw DEVICE) 컨테이너를 지정할 수 없습니다.
사용자 응답:

테이블 스페이스를 작성하는 경우 FILE 컨테이너 또는 시스템 관리 테이블 스페이스를 대신 사용하십시오. SET TABLESPACE CONTAINERS 명령을 지정하는 경우 FILE 컨테이너를 대신 사용하십시오.

sqlcode : -257

sqlstate : 42994

SQL0258N
테이블 스페이스의 재조정이 보류 또는 진행 중일 때에는 컨테이너 조작을 수행할 수 없습니다.
설명:

다음 조건 중 하나가 해당됩니다.

  1. 컨테이너 조작을 포함하는 ALTER TABLESPACE문이 이전에 이 응용프로그램 또는 다른 응용프로그램에 의해 발행되었으므로 커미트되어야 합니다.
  2. 컨테이너 조작을 포함하는 ALTER TABLESPACE문이 발행되어 커미트되었고 현재 테이블 스페이스를 재조정 중입니다.
사용자 응답:
  1. 가능하면, 커미트되지 않은 작업 단위(UOW)를 롤백하고 단일 ALTER TABLESPACE문을 발행하여 모든 컨테이너 조작을 수행하십시오. 그렇지 않은 경우, 재조정이 완료될 때까지 기다린 후 조작을 다시 시도하십시오. 같은 ALTER TABLESPACE문에서 테이블 스페이스에 페이지를 추가 및 제거할 수 없음에 유의하십시오.
  2. 재조정이 완료될 때까지 기다린 후 조작을 다시 시도하십시오.

sqlcode : -258

sqlstate : 55041

SQL0259N
테이블 스페이스의 컨테이너 맵이 너무 복잡합니다.
설명:

맵 구조에는 테이블 스페이스의 어드레스 스페이스가 다양한 컨테이너에 맵핑되는 방법에 관한 레코드가 있습니다. 이 방법이 너무 복잡해지면, 테이블 스페이스 파일에 맞지 않습니다.

사용자 응답:

컨테이너 간에 데이터를 더 고르게 분배하려면 테이블 스페이스를 재조정해야 합니다. 그러면 맵핑이 단순화됩니다.

이 방법이 적용되지 않으면, 가능한 한 많은 컨테이너를 동일한 크기로 만드십시오. 테이블 스페이스를 백업한 후 데이터베이스 관리 유틸리티를 사용하여 컨테이너를 변경하면 기존 컨테이너 크기를 변경할 수 있습니다. 테이블 스페이스를 새 컨테이너로 리스토어하십시오.

sqlcode : -259

sqlstate : 54037

SQL0260N
컬럼 column-name은(는) LONG 컬럼, DATALINK 컬럼 또는 구조화된 유형 컬럼이므로 파티션 키에 속할 수 없습니다.
설명:

파티션 키는 LONG 유형 컬럼, DATALINK 컬럼 또는 구조화된 유형 컬럼을 가질 수 없습니다.

명령문을 처리할 수 없습니다.

사용자 응답:

파티션 키에 LONG 컬럼, DATALINK 컬럼 또는 구조화된 유형 컬럼을 사용하지 마십시오.

테이블에 LONG 컬럼, DATALINK 컬럼 또는 구조화된 유형 컬럼만 있는 경우, 파티션 키에 사용할 수 있는 컬럼을 테이블에 추가하거나 단일 데이터베이스 파티션 그룹에서 파티션 키 없이 테이블을 정의하십시오.

sqlcode : -260

sqlstate : 42962

SQL0262N
파티션 키로 사용할 수 있는 컬럼이 없으므로 테이블 table-name을(를) 데이터베이스 파티션 그룹 group-name에 작성할 수 없습니다.
설명:

테이블 table-name을(를) 데이터베이스 파티션 그룹에 작성할 수 없습니다. 테이블에는 파티션 키로 사용할 수 있는 컬럼이 최소한 하나는 있어야 합니다. 다음 데이터 유형의 컬럼은 파티션 키에서 사용할 수 없습니다.

  • LONG VARCHAR, LONG VARGRAPHIC, BLOB, CLOB, DBCLOB
  • DATALINK
  • 구조화된 유형
  • 위의 데이터 유형에 기초한 사용자 정의 데이터 유형

명령문을 처리할 수 없습니다.

사용자 응답:

파티션 키에서 사용할 수 있는 하나 이상의 컬럼으로 테이블을 작성하거나, 단일 데이터베이스 파티션 그룹에 테이블을 작성하십시오.

sqlcode : -262

sqlstate : 428A2

SQL0263N
node-number-1부터 node-number-2까지의 노드 범위가 유효하지 않습니다. 두 번째 노드 번호는 첫 번째 노드 번호보다 크거나 같아야 합니다.
설명:

지정된 노드 범위가 유효하지 않습니다.

명령문을 처리할 수 없습니다.

사용자 응답:

명령문의 노드 범위를 정정한 다음, 요청을 다시 시도하십시오.

sqlcode : -263

sqlstate : 428A9

SQL0264N
테이블이 다중 노드로 구성된 노드 그룹 name에 정의된 테이블 스페이스에 상주하므로 파티션 키를 추가 또는 삭제할 수 없습니다.
설명:

단일 데이터베이스 파티션 그룹에 있는 테이블의 파티션 키를 추가 또는 삭제만 할 수 있습니다.

명령문을 처리할 수 없습니다.

사용자 응답:

다음 중 하나를 수행하고 요청을 다시 시도하십시오.

  • 파티션 키와 동일한 테이블을 정의하십시오.
  • 데이터베이스 파티션 그룹을 단일 데이터베이스 파티션 그룹으로 재분배하십시오.

sqlcode : -264

sqlstate : 55037

SQL0265N
노드 node-number은(는) 중복되는 노드입니다.
설명:

CREATE NODEGROUP문의 경우, 노드는 ON NODES절에 한번만 나타날 수 있습니다.

CREATE TABLESPACE 및 ALTER TABLESPACE문의 경우, 노드는 하나의 ON NODES절에서만 한번만 나타날 수 있습니다.

ALTER NODEGROUP문 또는 REDISTRIBUTE NODEGROUP 명령의 경우, 다음 중 하나가 발생했습니다.

  • 노드가 ADD NODES 또는 DROP NODES절에 두 번 이상 나타납니다.
  • 노드가 ADD NODES 및 DROP NODES절에 모두 나타납니다.
  • 추가할 노드가 이미 데이터베이스 파티션 그룹의 구성원입니다.

명령문을 처리할 수 없습니다.

사용자 응답:

ON NODES, ADD NODES 또는 DROP NODES절에 있는 데이터베이스 파티션 이름이나 데이터베이스 파티션 번호가 고유한지 확인하십시오. CREATE TABLESPACE 및 ALTER TABLESPACE문의 경우, 노드가 하나의 ON NODES절에만 나타나는지 확인하십시오.

또한, ALTER NODEGROUP문 또는 REDISTRIBUTE NODEGROUP 명령의 경우,

  • ADD NODES 및 DROP NODES절에 모두 노드를 지정하지 마십시오.
  • 데이터베이스 파티션 그룹에 이미 노드가 정의되어 있는 경우, ADD NODES절에서 노드를 제거하십시오.

sqlcode : -265

sqlstate : 42728

SQL0266N
노드 node-number이(가) 정의되지 않았습니다.
설명:

다음 이유 중 하나로 인해 노드 node-number이(가) 유효하지 않습니다.

  • 노드 번호가 0 - 999의 유효한 범위 내에 없습니다.
  • 노드가 노드 구성 파일에 없습니다.
  • 노드가 데이터베이스 파티션 그룹의 일부가 아니므로 요청된 조작을 처리할 수 없습니다.

명령문을 처리할 수 없습니다.

사용자 응답:

조건에 따라,

  • 유효한 범위 내에 있는 노드 번호로 명령문, 명령 또는 API를 발행하십시오.
  • 시스템에 노드를 추가하기 위한 프로시저를 따르십시오.
  • 명령문, 명령 또는 API에 지정된 노드에서 노드를 제거하십시오.

sqlcode : -266

sqlstate : 42729

SQL0268N
노드 그룹을 재분배하는 동안 operation을(를) 수행할 수 없습니다.
설명:

이유는 다음 중 하나입니다.

  • 노드 그룹을 재분배하는 중입니다. 현재 조작이 완료될 때까지 노드 그룹을 변경, 삭제 또는 다시 재분배할 수 없습니다.
  • 테이블의 노드 그룹을 재분배하는 중에는 테이블의 파티션 키를 삭제할 수 없습니다.

명령문을 처리할 수 없습니다.

사용자 응답:

재분배가 완료될 때까지 기다린 후에 요청을 다시 시도하십시오.

sqlcode : -268

sqlstate : 55038

SQL0269N
데이터베이스에 최대 파티션 맵 수가 들어 있습니다.
설명:

데이터베이스에 최대 파티션 맵 수(32,768개)가 들어 있으므로, 새 데이터베이스 파티션 그룹을 작성하거나 데이터베이스 파티션 그룹을 변경하거나 기존의 데이터베이스 파티션 그룹을 재분배할 수 없습니다.

명령문을 처리할 수 없습니다.

사용자 응답:

데이터베이스에서 하나 이상의 데이터베이스 파티션 그룹을 삭제하십시오.

주: 데이터베이스 파티션 그룹을 삭제하면, 데이터베이스 파티션 그룹에 상주하는 테이블 스페이스, 테이블 및 뷰와 같은 모든 데이터베이스 오브젝트가 삭제됩니다.

sqlcode : -269

sqlstate : 54033

SQL0270N
함수가 지원되지 않습니다(이유 코드 = reason-code).
설명:

명령문이 다음의 이유 코드에 표시된 대로 제한사항을 위반하므로 이 명령문을 처리할 수 없습니다.

1
기본 키, 각 고유 제한조건 및 각 고유 인덱스에는 테이블의 모든 파티션 컬럼이 들어 있어야 합니다.(컬럼은 어떤 순서로든 표시될 수 있습니다.)
2
파티션 키 컬럼 값의 갱신이 지원되지 않습니다.
3
외부 키는 ON DELETE SET NULL에 정의될 때 널(NULL) 입력 가능 파티션 키를 포함할 수 없습니다. 이것은 이러한 제한조건을 정의하면 파티션 키 컬럼의 갱신을 시도하므로 이유 코드 2의 특수한 경우입니다.
4
카탈로그 파티션 이외의 위치에서 다중 파티션 노드 그룹이나 단일 파티션 노드 그룹을 사용하여 정의된 테이블은 DATA CAPTURE CHANGES를 지원하지 않습니다.
5
WITH CHECK OPTION절로 작성된 뷰는 다음과 같은 함수(또는 함수를 사용하는 참조 뷰)를 사용해서는 안됩니다.
  • 비결정 함수
  • 부가작용이 있는 함수
  • 데이터의 배치와 관련된 함수(예: 노드 번호 또는 파티션 함수)

새 뷰가 CASCADED 점검 옵션으로 작성된 경우, 이러한 함수는 참조되는 뷰 내에 존재하면 안됩니다.

6
사용자 정의 구별 유형에 대해 변환은 정의할 수 없습니다.
7
긴 필드는 페이지 크기가 4K인 테이블 스페이스만을 사용하여 정의할 수 있습니다. LARGE TABLESPACE는 4K 페이지 스페이스만을 사용하여 작성할 수 있습니다.
8
구조화된 유형은 DB2 버전 7.1 이전의 테이블 컬럼이나 구조화된 유형 속성 데이터 유형으로 지원되지 않습니다.
9
트리거는 유형이 지정된 테이블에서 지원되지 않습니다.
10
테이블에 4K 페이지 크기의 테이블 스페이스에 삽입되어야 하는 하나 이상의 LOB 컬럼이 있고, 테이블의 행 크기 또는 컬럼 수가 8K 페이지 크기의 테이블 스페이스를 필요로 하므로 단일 디폴트 테이블 스페이스를 선택할 수 없습니다.
11
유형이 지정된 테이블이나 유형이 지정된 뷰는 속성이 없는 구조화된 유형을 사용하여 작성할 수 없습니다.
12
소스 키 매개변수의 유형은 LOB, DATALINK, LONG VARCHAR 또는 LONG VARGRAPHIC에서 전래되지 않는 사용자 정의 구조화된 유형 또는 구별 유형이어야 합니다.
13
점검 제한조건은 유형이 지정된 테이블에 정의할 수 없으며 WITH CHECK OPTION절은 유형이 지정된 뷰에 지정할 수 없습니다.
14
참조 제한조건은 유형이 지정된 테이블이나 유형이 지정된 테이블인 상위 테이블에 정의할 수 없습니다.
15
참조 유형 컬럼에는 디폴트값을 정의할 수 없습니다.
16
참조 데이터 유형이나 구조화된 데이터 유형은 DB2 버전 7.1 이전 버전에서 사용자 정의 함수의 리턴 데이터 유형 또는 매개변수 데이터 유형으로 사용할 수 없습니다. 그렇지 않을 경우, 범위 지정된 참조 데이터 유형을 루틴의 리턴 데이터 유형 또는 매개변수 데이터 유형으로 사용할 수 없습니다. 구조화된 유형은 테이블 또는 행 함수의 리턴 컬럼으로 사용할 수 없습니다.
17
SET CONSTRAINTS문은 유형이 지정된 테이블에 사용할 수 없습니다.
18
컬럼 레벨 UPDATE 및 REFERENCES 특권은 유형이 지정된 테이블이나 유형이 지정된 뷰에 부여할 수 없습니다.
19
유형이 지정된 테이블의 컬럼에 디폴트값을 정의할 때 특정 디폴트값을 지정해야 합니다.
20
ALTER TABLE은 구체화된 쿼리 테이블에서 지원되지 않습니다.
21
컬럼 길이는 구체화된 쿼리 테이블의 기본 테이블이 되는 테이블에서는 변경할 수 없습니다.
22
구체화된 쿼리 테이블은 CREATE SCHEMA문에 정의할 수 없습니다.
23
REPLICATED는 REFRESH DEFERRED로 정의된 구체화된 쿼리 테이블에 대해서만 지정할 수 있습니다.
24
BEFORE 트리거의 트리거 조치는 REFRESH IMMEDIATE로 정의된 구체화된 쿼리 테이블을 참조할 수 없습니다.
25
SET CONSTRAINTS문에 하나의 구체화된 쿼리 테이블만 지정할 수 있습니다.
26
재분배 중인 노드 그룹에 최소한 하나의 복제된 구체화된 쿼리 테이블이 들어 있습니다.
27
복제된 구체화된 쿼리 테이블은 복제된 구체화된 쿼리 테이블을 구성하는 하나 이상의 컬럼에 고유한 인덱스가 존재하지 않는 테이블에 대해서는 정의할 수 없습니다.
28
유형이 지정된 테이블이나 구체화된 쿼리 테이블의 이름은 바꿀 수 없습니다.
29
FOR EXCEPTION절은 SET CONSTRAINTS문의 구체화된 쿼리 테이블로 지정할 수 없습니다.
30
CREATE SCHEMA문에 유형이 지정된 테이블과 유형이 지정된 뷰를 정의할 수 없습니다.
31
500를 초과하는 컬럼을 갖는 파티션 키를 정의할 수 없습니다.
32
카탈로그 피티션 이외의 위치에서 다중 파티션 노드 그룹이나 단일 파티션 노드 그룹을 사용하여 정의된 테이블은 FILE LINK CONTROL로 정의된 DATALINK 컬럼을 지원하지 않습니다.
33
REFRESH IMMEDIATE로 정의된 구체화된 쿼리 테이블의 기본 테이블은 연쇄 효과(즉, ON DELETE CASCADE 또는 ON DELETE SET NULL 옵션 사용)가 있는 참조 제한조건의 하위 테이블이 될 수 없습니다.
34
현재 릴리스에서는 기본 오브젝트 관계 기능이 지원되지 않습니다.
35
버전 7 데이터베이스에 있는 다중 노드 데이터베이스 환경에서는 시퀀스 또는 식별 컬럼을 작성할 수 없습니다.
36
버전 7 데이터베이스에 시퀀스 또는 식별 컬럼이 있는 경우, 다중 노드 데이터베이스의 데이터베이스 활성화가 허용되지 않습니다.
38
DB2 버전 8.1 FixPak 6 이전 버전에서는 다중 파티션 노드 그룹에서 인덱스 확장자를 사용하는 인덱스가 지원되지 않습니다.
39
별칭 또는 OLE DB 테이블 함수는 SQL 메소드 또는 SQL 함수 내용에서 직접 또는 간접적으로 참조할 수 없습니다.
40
함수 IDENTITY_VAL_LOCAL을 트리거 또는 SQL 함수에서 사용할 수 없습니다.
41
SQL 변수 명령문은 로컬 변수 및 전이 변수에 모두 지정합니다. 이는 지원되지 않습니다.
42
다중 노드 데이터베이스에서 SQL 제어 명령문을 사용한 트리거, 메소드 또는 함수의 실행 및 동적 복합 명령문의 실행이 허용되지 않습니다.
43
요청한 옵션 중 하나 이상이 현재 지원되지 않습니다.
44
다음 EXPLAIN MODES는 MPP, SMP 및 Data Joiner에서 지원되지 않습니다.
  • 계수 카디낼리티(COUNT CARDINALITIES)
  • 비교 카디낼리티(COMPARE CARDINALITIES)
  • 추정 카디낼리티(ESTIMATE CARDINALITIES)
45
APPEND 모드는 다차원적으로 클러스터된(MDC) 테이블에는 지원되지 않습니다.
46
INPLACE 테이블 재구성은 다차원적으로 클러스터된(MDC) 테이블에는 지원되지 않습니다.
47
인덱스 확장자는 다차원적으로 클러스터된(MDC) 테이블에는 지원되지 않습니다.
48
다차원적으로 클러스터된(MDC) 테이블의 차원 스펙 변경은 지원되지 않습니다.
49
클러스터링 인덱스는 다차원적으로 클러스터된(MDC) 테이블에는 지원되지 않습니다.
50
사용자 정의 임시 테이블은 다차원적으로 클러스터된(MDC) 테이블이 될 수 없습니다.
51
비카탈로그 데이터베이스 파티션에서 LANGUAGE SQL을 사용한 CREATE PROCEDURE는 지원되지 않습니다.
52
생성된 컬럼이 파티션 키 컬럼이거나 ORGANIZE BY절에서 사용되는 경우, 이 컬럼의 표현식을 수정하거나 표현식을 사용하여 생성되지 않은 컬럼에 추가할 수 없습니다.
53
LONG VARCHAR, LONG VARGRAPHIC, DATALINK, LOB 유형, 이러한 유형의 구별 유형 또는 구조화된 유형의 컬럼은 화면 이동 커서의 선택 목록에 지정할 수 없습니다.
54
INPLACE 테이블 재구성은 지정된 시스템 카탈로그 테이블에는 지원되지 않습니다.
55
페더레이티드 데이터베이스 시스템 지원과 집중기 기능은 동시에 활성화될 수 없습니다.
56
온라인 인덱스 재구성은 ALLOW WRITE 모드의 공간 인덱스에는 지원되지 않습니다.
57
온라인 인덱스 재구성은 ALLOW WRITE 모드의 다차원 클러스터(MDC) 테이블에는 지원되지 않습니다.
58
XML 데이터 유형은 임시 데이터 유형으로만 사용할 수 있으므로, 데이터베이스에 저장하거나 응용프로그램에 리턴할 수 없습니다.
59
SQL문을 포함하는 함수 또는 메소드는 병렬 환경에서 사용할 수 없습니다.
60
유형이 지정된 테이블에 종속되며 유형이 지정되거나 지정되지 않은 VIEW 유형의 오브젝트가 있으므로, ALTER TABLE ALTER COLUMN SET INLINE LENGTH문이 허용되지 않습니다.
61
점검 제한조건 또는 생성된 컬럼의 표현식에서는 텍스트 검색 함수를 사용할 수 없습니다.
62
WITH CHECK OPTION절은 텍스트 검색 함수를 직접 참조하는 뷰 또는 텍스트 검색 함수를 참조하는 기타 뷰에 종속되는 뷰와 함께 사용할 수 없습니다.
63
LOB 유형, LOB 유형의 구별 유형 또는 구조화된 유형은 둔감한 화면 이동 커서의 선택 목록에 지정할 수 없습니다.
64
페더레이티드 처리는 이 플랫폼에서 지원되지 않습니다.
65
별칭의 로컬 유형을 현재 유형에서 지정한 유형으로 변경할 수 없습니다.
66
내장 변환 그룹 SYSSTRUCT이 지원되지 않습니다.
67
별칭 또는 별칭 보기를 MERGE문의 목표로 지정할 수 없습니다.
68
파티션된 데이터베이스의 SQL문에서 지원하는 구별 NEXT VALUE 표현식의 최대수는 55입니다.
69
뷰에서 삭제하면 뷰 정의에 표시된 두 개 이상의 테이블에 대한 다중 경로를 통해 하위 테이블이 연속 삭제되도록 합니다. 하위 테이블에 정의된 점검 제한조건 또는 트리거는 보장되지 않는 최종 결과에 따라 시작되어야 합니다.
70
컬럼 길이는 쿼리 최적화에 사용할 수 있는 뷰의 기본 테이블인 테이블에서 변경할 수 없습니다.
71
병렬 환경의 트리거, SQL 함수, SQL 메소드 또는 동적 복합 명령문에서는 CALL문을 사용할 수 없습니다.
72
널(NULL) 입력 가능 컬럼이 식별 컬럼이 되도록 변경할 수 없습니다.
73
파티션된 데이터베이스 환경의 백업 이미지는 로그를 포함할 수 없습니다.
74
시간소인을 통한 복구 실행기록 파일의 상태 필드 갱신은 허용되지 않습니다.
75
자동 통계 콜렉션이 다중 데이터베이스 파티션 시스템, SMP를 사용할 수 있는 시스템 또는 페더레이티드 시스템에서 지원되지 않습니다.
84
파티션된 데이터베이스를 자동 스토리지에 사용할 수 없습니다.
85
자동 스토리지에 사용 가능한 단일 파티션 데이터베이스에 파티션을 추가할 수 없습니다.
사용자 응답:

이유 코드에 해당하는 조치는 다음과 같습니다.

1
CREATE TABLE, ALTER TABLE 또는 CREATE UNIQUE INDEX문을 정정하십시오.
2
다중 파티션 테이블의 파티션 키 컬럼을 갱신하지 마십시오. 또는 파티션 컬럼에 새 값이 있는 행을 삭제한 후 삽입해 보십시오.
3
파티션 키 컬럼을 널(NULL) 입력 가능하게 하거나, 다른 ON DELETE 조치를 지정하거나, 테이블의 파티션 키를 변경하여 외부 키에 파티션 키의 컬럼이 포함되지 않도록 하십시오.
4
DATA CAPTURE NONE을 지정하거나, 카탈로그 파티션을 지정하는 단일 파티션 노드 그룹의 테이블 스페이스에 테이블이 위치하게 하십시오.
5
WITH CHECK OPTION절을 사용하지 않거나 뷰 정의에서 함수 또는 뷰를 제거하십시오.
6
사용자 정의 구별 유형에 대해서는 변환이 자동으로 수행됩니다. 사용자 정의 구조화된 유형에 대해서만 CREATE TRANSFORM문을 사용하십시오.
7
긴 필드가 들어 있는 테이블에 페이지 크기가 4K인 테이블 스페이스를 사용하십시오. DMS 테이블 스페이스를 사용하는 경우, 긴 필드는 다른 테이블에서 페이지 크기가 4k인 테이블 스페이스나 페이지 크기가 다른 테이블 스페이스의 인덱스 데이터에 위치할 수 있습니다. LARGE TABLESPACE를 정의할 때 PAGESIZE 4K를 사용하십시오.
8
DB2 버전 7.1 이전 버전의 서버인 경우, CREATE TABLE문 또는 ALTER TYPE ADD COLUMN문에 구조화된 유형의 컬럼 데이터 유형이 없는지 확인하십시오. CREATE TYPE문 또는 ALTER TYPE ADD ATTRIBUTE문에 구조화된 유형의 속성 데이터 유형이 없는지 확인하십시오.
9
유형이 지정된 테이블에서 트리거를 정의하지 마십시오.
10
Long 데이터가 4K 페이지 크기의 테이블 스페이스에 있고, 기본 데이터가 8K 페이지 크기의 테이블 스페이스에 있도록 테이블의 행 크기 또는 컬럼 수를 줄이거나 두 개의 테이블 스페이스를 지정하십시오.
11
유형이 지정된 테이블이나 유형이 지정된 뷰를 작성할 때 최소한 하나의 속성이 정의된 구조화된 유형을 지정하십시오.
12
소스 키 매개변수 유형의 경우, LOB, DATALINK, LONG VARCHAR 또는 LONG VARGRAPHIC에서 전래되지 않은 사용자 정의 구조화된 유형 또는 구별 유형만 사용하십시오.
13
유형이 지정된 테이블에 대한 CREATE TABLE 또는 ALTER TABLE문에서는 점검 제한조건을 지정하지 마십시오. 유형이 지정된 뷰의 CREATE VIEW문에서 WITH CHECK OPTION절을 지정하지 마십시오.
14
CREATE TABLE 또는 ALTER TABLE문에는 유형이 지정된 테이블과 관련된 참조 제한조건을 지정하지 마십시오.
15
CREATE TABLE 또는 ALTER TABLE문에는 참조 데이터 유형의 컬럼에 DEFAULT절을 지정하지 마십시오.
16
DB2 버전 7.1 이전 버전의 서버인 경우, 사용자 정의 함수(UDF)를 작성할 때 구조화된 유형의 매개변수 또는 리턴 유형을 지정하지 마십시오. 그렇지 않으면, 범위 지정된 참조 유형을 매개변수 또는 리턴 유형으로 지정하지 마십시오. 구조화된 유형을 테이블 또는 행 함수의 리턴 컬럼으로 지정하지 마십시오.
17
SET CONSTRAINTS문에는 유형이 지정된 테이블을 지정하지 마십시오.
18
유형이 지정된 테이블이나 유형이 지정된 뷰에 REFERENCES 또는 UPDATE 특권을 부여할 때 특정 컬럼 이름을 포함시키지 마십시오.
19
유형이 지정된 테이블의 컬럼에 DEFAULT절을 지정할 때 특정 값을 포함시키십시오.
20
구체화된 쿼리 테이블을 삭제하고 원하는 속성으로 재작성하십시오.
21
구체화된 쿼리 테이블을 삭제하고 기본 테이블의 컬럼 길이를 변경한 다음, 구체화된 쿼리 테이블을 재작성하십시오.
22
CREATE SCHEMA문 외부에서 CREATE SUMMARY TABLE문을 발행하십시오.
23
REPLICATED 스펙을 제거하거나, 구체화된 쿼리 테이블 정의에 대해 REFRESH DEFERRED가 지정되었는지 확인하십시오.
24
BEFORE 트리거의 트리거 조치에서 구체화된 쿼리 테이블에 대한 참조를 제거하십시오.
25
각 구체화된 쿼리 테이블에 대해 SET CONSTRAINTS IMMEDIATE CHECKED문을 개별적으로 발행하십시오.
26
노드 그룹에서 복제된 모든 구체화된 쿼리 테이블을 삭제한 다음, REDISTRIBUTE NODEGROUP 명령을 다시 발행하십시오. 복제된 구체화된 쿼리 테이블을 재작성하십시오.
27
구체화된 쿼리 테이블에 대해 정의된 컬럼의 서브세트가 기본 테이블의 고유 인덱스를 구성하는 컬럼 세트인지도 확인하십시오.
28
유형이 지정된 테이블이나 구체화된 쿼리 테이블 이름은 테이블을 삭제하고 새 이름으로 다시 작성해야만 변경할 수 있습니다. 테이블 삭제는 테이블에 종속되는 다른 오브젝트 및 테이블에 대한 특권이 손실됨을 의미할 수도 있습니다.
29
SET CONSTRAINTS문에서 FOR EXCEPTION절을 제거하십시오.
30
CREATE SCHEMA문 외부에서 유형이 지정된 뷰나 유형이 지정된 테이블에 대해 CREATE문을 발행하십시오.
31
파티션 키에서 컬럼 수를 줄이십시오.
32
DATALINK 컬럼에 대해 NO LINK CONTROL을 지정하거나, 카탈로그 파티션을 지정하는 단일 파티션 노드 그룹의 테이블 스페이스에 테이블이 위치하게 하십시오. 다중 파티션 노드 그룹으로 재분배할 경우, 재분배를 계속하려면 테이블을 삭제해야 합니다.
33
  • REFRESH IMMEDIATE를 하위 테이블로 하여 정의된 구체화된 쿼리 테이블의 기본 테이블을 사용하여 연쇄 효과(즉, ON DELETE CASCADE 또는 ON DELETE SET NULL 옵션 사용)가 있는 참조 제한조건을 정의하지 마십시오. 또는
  • 기본 테이블이 연쇄 효과(즉, ON DELETE CASCADE 또는 ON DELETE SET NULL 옵션 사용)가 있는 참조 제한조건의 하위 테이블인 REFRESH IMMEDIATE 구체화된 쿼리 테이블을 정의하지 마십시오.
34
지원되지 않는 오브젝트 관계 기능의 사용을 제거하여 오류를 해결할 수 있습니다.
35
『GENERATED [ALWAYS | BY DEFAULT] AS IDENTITY ...』 속성을 작성하거나 제거하지 마십시오.
36
새 노드를 삭제하여 단일 노드 구성으로 돌아가십시오. 노드가 더 필요하면, 새 노드를 추가하기 전에 식별 컬럼이 있는 시퀀스 또는 테이블을 삭제해야 합니다.
38
인덱스 확장자를 사용하는 인덱스는 다중 파티션 노드 그룹의 테이블에 작성할 수 없습니다. 인덱스 확장자를 사용하는 인덱스가 노드 그룹의 테이블에 있는 동안에는 노드 그룹이 다중 파티션 노드 그룹이 될 수 없습니다. 인덱스를 재작성할 수 없는 경우, 이러한 인덱스를 삭제하고 파티션을 노드 그룹에 추가하거나, 노드 그룹을 변경하지 말고 그대로 두십시오.
39
별칭 또는 OLE DB 테이블 함수에 대한 참조를 제거하거나 이들 중 하나를 간접적으로 참조하는 오브젝트에 대한 참조를 제거하십시오.
40
트리거 정의 또는 SQL 함수 정의에서 IDENTITY_VAL_LOCAL 함수 호출을 제거하십시오.
41
지정문을 두 개의 개별 명령문으로 나누십시오. 한 명령문은 SQL 변수에만 값을 지정하고, 다른 명령문은 전이 변수에만 값을 지정해야 합니다.
42
새 노드를 삭제하여 단일 노드 구성으로 돌아가십시오. 노드가 더 필요하면, 제어 명령문이 포함된 트리거, 함수 또는 메소드를 삭제해야 합니다.
43
Runstats 명령을 다시 발행하고 지원되지 않은 옵션의 설정을 해제하십시오.
44
EXPLAIN 모드는 SMP, MPP 및 Data Joiner에서 사용할 수 없습니다. 가능하면, 직렬 모드에서 쿼리를 실행하십시오. 그렇지 않을 경우, EXPLAIN 모드를 예(YES) 또는 EXPLAIN으로 설정하면 실제 카디낼리티를 제외하고는 동일한 정보가 제공됩니다.
45
다차원적으로 클러스터된(MDC) 테이블의 경우, ALTER TABLE문에 APPEND절을 지정하지 마십시오.
46
INPLACE 옵션을 지정하지 않고 REORG 명령을 다시 발행하십시오.
47
다차원적으로 클러스터된(MDC) 테이블의 경우, CREATE INDEX문에 EXTENSION절을 지정하지 마십시오.
48
다차원적으로 클러스터된(MDC) 테이블을 삭제하고 수정된 차원 스펙으로 재작성하십시오.
49
다차원적으로 클러스터된(MDC) 테이블의 경우, CREATE INDEX문에 CLUSTER절을 지정하지 마십시오.
50
선언된 전역 임시 테이블의 경우, CREATE TABLE문에 ORGANIZE BY절을 지정하지 마십시오.
51
카탈로그 데이터베이스 파티션에서 LANGUAGE SQL로 CREATE PROCEDURE를 발행하십시오.
52
표현식을 수정하거나 기존 컬럼에 추가하지 마십시오. PARTITIONING KEY, ORGANIZE BY절의 구성이나 생성된 컬럼의 구성원을 생성하는 표현식을 변경하려면, 테이블을 삭제하고 다시 작성한 다음, 다시 데이터를 채워야 합니다.
53
이러한 유형의 컬럼을 포함하지 않도록 화면 이동 커서의 선택 목록을 수정하십시오.
54
INPLACE 옵션을 지정하지 않고 REORG 명령을 다시 발행하십시오.
55
집중기 또는 페더레이티드 데이터베이스 시스템 지원 기능을 끄십시오. 데이터베이스 관리 프로그램 매개변수 MAX_CONNECTIONS를 MAX_COORDAGENTS보다 작거나 같게 설정하여 집중기를 끄십시오. 데이터베이스 관리 프로그램 구성에서 FEDERATED 매개변수를 NO로 설정하여 페더레이티드 데이터베이스 시스템 지원 기능을 끄십시오.
56
REORG INDEXES 명령을 다시 발행하고 ALLOW NONE 또는 ALLOW READ를 지정하십시오.
57
REORG INDEXES 명령을 다시 발행하고 ALLOW NONE 또는 ALLOW READ를 지정하십시오.
58
XML 입력을 허용하는 함수 중 하나에 XML 데이터를 입력하고 함수의 출력을 데이터베이스에 저장하거나 응용프로그램으로 리턴하십시오.
59
병렬 환경에서는 NO SQL 옵션으로 정의된 함수와 메소드만 사용하십시오.
60
유형이 지정된 테이블에 종속되는 뷰를 삭제하십시오. 유형이 지정된 테이블에 대해 ALTER TABLE ALTER COLUMN SET INLINE LENGTH문을 발행하여 삭제된 뷰를 재작성하십시오.
61
점검 제한조건 또는 생성된 컬럼의 표현식에서는 텍스트 검색 함수를 사용하지 마십시오. 가능하면, CONTAINS 대신 LIKE 함수를 사용하십시오.
62
이 뷰에서 WITH CHECK OPTION절을 지정하지 마십시오.
63
이러한 유형의 컬럼을 포함하지 않도록 화면 이동 커서의 선택 목록을 수정하십시오.
64
이 플랫폼에서는 페더레이티드 처리를 시도하지 마십시오.
65
별칭의 로컬 유형을 현재 유형에서 지정한 유형으로 변경하지 마십시오.
66
변환 그룹으로 SYSSTRUCT를 지정하지 마십시오.
67
별칭 또는 별칭 보기를 MERGE문의 목표로 지정하지 마십시오.
68
명령문에서 구별 NEXT VALUE 표현식의 수를 줄이거나 파티션되지 않은 데이터베이스를 변경하십시오.
69
뷰에서 삭제하지 마십시오.
70
쿼리 최적화에 사용할 수 있는 뷰를 사용하지 않고, 기본 테이블의 컬럼 길이를 변경한 다음, 쿼리 최적화를 위해 뷰를 사용할 수 있도록 하십시오.
71
병렬 환경의 트리거, SQL 함수, SQL 메소드 또는 동적 복합 명령문에서는 CALL문을 사용하지 마십시오.
72
컬럼에 널(NULL) 입력 가능한 동안에는 컬럼이 식별 컬럼이 될 수 없습니다. 이를 변경하려면 테이블을 삭제하고 널(NULL)이 아닌 컬럼으로 테이블을 다시 작성한 다음, 데이터를 다시 채워야 합니다. 새 컬럼을 식별 컬럼으로 추가할 수도 있습니다.
73
INCLUDE LOGS 옵션을 지정하지 않고 BACKUP 명령을 발행하십시오.
74
EID를 통해서만 복구 실행기록 파일의 상태 필드를 갱신하십시오.
75
데이터베이스 구성 매개션수(AUTO_STATS_PROF 및 AUTO_PROF_UPD)를 OFF에 설정하여 이 데이터베이스의 자동 통계 콜렉션을 사용 불가능하게 하십시오.

또는 시스템을 단일 데이터베이스 파티션에 있고 SMP를 사용할 수 없으며 페더레이트되지 않은 시스템으로 변경하십시오.

84
자동 스토리지 사용이 불가능하도록 CREATE DATABASE 명령을 변경하십시오.
85
자동 스토리지에 사용 가능한 단일 파티션 데이터베이스에 파티션 추가를 시도하지 마십시오.

sqlcode : -270

sqlstate : 42997

SQL0271N
fid가 fid인 테이블의 인덱스 파일이 누락되었거나 유효하지 않습니다.
설명:

처리 중에 fid가 fid인 테이블의 인덱스 파일이 필요합니다. 이 파일이 누락되었거나 유효하지 않습니다.

명령문을 처리할 수 없으며, 응용프로그램이 계속해서 데이터베이스에 연결되어 있습니다. 이 상태는 이 테이블의 인덱스를 사용하지 않는 다른 명령문에는 영향을 미치지 않습니다.

사용자 응답:

데이터베이스에서 모든 사용자의 연결이 끊어졌는지 확인하고, 모든 노드에서 RESTART DATABASE 명령을 발행하십시오. 그런 다음 요청을 다시 시도하십시오.

데이터베이스를 재시작하면, 인덱스(또는 여러 인덱스)가 재작성됩니다.

sqlcode : -271

sqlstate : 58004

SQL0276N
데이터베이스 name이(가) 리스토어 보류 상태에 있으므로 이 데이터베이스에 연결할 수 없습니다.
설명:

연결하려면 먼저 데이터베이스를 리스토어해야 합니다.

연결되지 않았습니다.

사용자 응답:

데이터베이스를 리스토어한 다음, CONNECT문을 다시 발행하십시오.

sqlcode : -276

sqlstate : 08004

SQL0279N
COMMIT 또는 ROLLBACK 처리 중에 데이터베이스 연결이 종료되었습니다. 트랜잭션이 인다우트 상태일 수 있습니다. 이유 코드 = reason-code.
설명:

커미트 처리 중에 오류가 발견되었습니다. 트랜잭션은 커미트 상태에 있지만, 커미트 처리가 완료되지 않았을 수도 있습니다. 응용프로그램의 데이터베이스 연결이 종료되었습니다.

오류의 원인은 reason-code(으)로 표시됩니다.

1
트랜잭션에 관련된 노드 도는 데이터 소스가 실패했습니다.
2
노드에 대한 커미트가 거부되었습니다. 관리 통지 로그에서 자세한 내용을 확인하십시오.
사용자 응답:

오류의 원인을 판별하십시오. 가장 일반적인 오류의 원인은 노드 실패나 연결 실패이므로 시스템 관리자에게 도움을 요청해야 할 수도 있습니다. RESTART DATABASE 명령이 이 트랜잭션의 커미트 처리를 완료합니다.

sqlcode : -279

sqlstate : 08007

SQL0280W
뷰, 트리거 또는 구체화된 쿼리 테이블 name이(가) 기존 작동 불능 뷰, 트리거 또는 구체화된 쿼리 테이블을 대체했습니다.
설명:

기존의 작동 불능 뷰, 트리거 또는 구체화된 쿼리 테이블 name이(가) 다음으로 대체되었습니다.

  • CREATE VIEW문의 결과로 새 뷰 정의
  • CREATE TRIGGER문의 결과로 새 트리거 정의
  • CREATE SUMMARY TABLE문의 결과로 새 구체화된 쿼리 테이블 정의
사용자 응답:

조치가 필요하지 않습니다.

sqlcode : +280

sqlstate : 01595

SQL0281N
테이블 스페이스 tablespace-name은(는) 시스템 관리 테이블 스페이스이므로, 추가 컨테이너로 변경할 수 없습니다.
설명:

시스템 관리 테이블 스페이스에는 컨테이너를 더 추가할 수 없습니다. 이에 대한 예외로, 테이블 스페이스 없이 노드를 추가하기 위해 데이터베이스 파티션 그룹을 수정한 경우, 새 노드에서 ALTER TABLESPACE 명령을 사용하여 컨테이너를 한 번 추가할 수 있습니다. 일반적으로, 컨테이너를 더 추가하려면 테이블 스페이스를 데이터베이스에서 관리해야 합니다.

명령문을 처리할 수 없습니다.

사용자 응답:

시스템 관리 테이블 스페이스에 컨테이너를 더 추가하려면, 테이블 스페이스를 삭제하고, 더 많은 컨테이너가 있는 테이블 스페이스를 재작성하십시오. 이때, 각 컨테이너의 크기가 같게 하고 컨테이너 크기 한계보다 작게 하십시오. 또는 DMS 테이블 스페이스로 변경하십시오.

sqlcode : -281

sqlstate : 42921

SQL0282N
테이블 스페이스 tablespace-name의 테이블 중 최소한 하나의 테이블 table-name이(가) 다른 테이블 스페이스에 속하는 부분을 하나 이상 가지고 있으므로, 이 테이블 스페이스를 삭제할 수 없습니다.
설명:

지정된 테이블 스페이스에 있는 테이블에 해당 테이블 스페이스에 있는 부분이 모두 포함되지 않습니다. 둘 이상의 테이블 스페이스가 지정된 경우, 지정된 테이블 스페이스 중 하나에 있는 테이블은 목록 내의 모든 부분을 포함하지 않습니다. 기본 테이블, 인덱스 또는 Long 데이터가 다른 테이블 스페이스에 있을 수 있으므로, 테이블 스페이스를 삭제해도 테이블이 완전히 삭제되지 않습니다. 그러면 테이블이 불일치 상태가 되므로 테이블 스페이스를 삭제할 수 없습니다.

사용자 응답:

테이블 스페이스를 삭제하기 전에 테이블 스페이스 tablespace-name에 포함된 모든 오브젝트가 이 테이블 스페이스의 모든 부분을 포함하는지 또는 목록에서 삭제될 부분이 들어 있는 테이블 스페이스를 포함하는지 확인하십시오.

테이블 스페이스를 삭제하기 전에 테이블 table-name을(를) 삭제해야 할 수도 있습니다.

sqlcode : -282

sqlstate : 55024

SQL0283N
시스템 임시 테이블 스페이스 tablespace-name은(는) 데이터베이스에서 페이지 크기가 page-size인 유일한 시스템 임시 테이블 스페이스이므로 삭제할 수 없습니다.
설명:

데이터베이스에는 카탈로그 테이블 스페이스의 페이지 크기와 같은 페이지 크기의 시스템 임시 테이블 스페이스가 최소한 하나는 포함되어야 합니다. 테이블 스페이스 tablespace-name을(를) 삭제하면 페이지 크기가 page-size인 마지막 시스템 임시 테이블 스페이스가 데이터베이스에서 제거됩니다.

사용자 응답:

이 테이블 스페이스를 삭제하기 전에 데이터베이스에 페이지 크기가 page-size인 또다른 시스템 임시 테이블 스페이스가 있는지 확인하십시오.

sqlcode : -283

sqlstate : 55026

SQL0284N
clause절 다음에 오는 테이블 스페이스 tablespace-name이(가) tablespace-type 테이블 스페이스이기 때문에 테이블이 작성되지 않았습니다.
설명:

CREATE TABLE 또는 DECLARE GLOBAL TEMPORARY TABLE문이 clause절 다음에 테이블 스페이스 tablespace-name을(를) 지정했지만, 이 절에 유효한 테이블 스페이스 유형이 아닙니다.

이는 다음 상황에서 발생할 수 있습니다.

  • 일반 테이블의 경우, IN절에 tablespace-name이(가) 지정되었고, 테이블 스페이스가 REGULAR 테이블 스페이스가 아닙니다.
  • 선언된 임시 테이블의 경우, IN절에 tablespace-name이(가) 지정되었고, 테이블 스페이스가 USER TEMPORARY 테이블 스페이스가 아닙니다.
  • tablespace-name이(가) LONG IN절에 지정되었고, 테이블 스페이스가 데이터베이스 테이블 스페이스에서 관리하는 LARGE 테이블 스페이스가 아닙니다.
  • tablespace-name이(가) INDEX IN절에 지정되었고, 테이블 스페이스는 데이터베이스 테이블 스페이스에서 관리하는 REGULAR 또는 LARGE 테이블 스페이스가 아닙니다.
사용자 응답:

CREATE TABLE문을 정정하여 clause절에 올바른 유형으로 테이블 스페이스를 지정하십시오.

sqlcode : -284

sqlstate : 42838

SQL0285N
1차 테이블 스페이스 tablespace-name이(가) 시스템 관리 테이블 스페이스이므로, 테이블 table-name의 인덱스 및/또는 긴 컬럼을 개별 테이블 스페이스에 지정할 수 없습니다.
설명:

1차 테이블 스페이스가 시스템 관리 테이블 스페이스인 경우, 모든 테이블 파트가 테이블 스페이스에 포함되어야 합니다. 1차 테이블 스페이스, 인덱스 테이블 스페이스 및 긴 테이블 스페이스가 데이터베이스 관리 테이블 스페이스인 경우에만, 테이블의 파트가 개별 테이블 스페이스에 포함될 수 있습니다.

사용자 응답:

1차 테이블 스페이스의 데이터베이스 관리 테이블 스페이스를 지정하거나, 다른 테이블 스페이스에 테이블 파트를 지정하지 마십시오.

sqlcode : -285

sqlstate : 42839

SQL0286N
권한 부여 ID user-name에 사용 권한이 부여된 페이지 크기가 최소한 pagesize인 디폴트 테이블 스페이스를 찾을 수 없습니다.
설명:

CREATE TABLE 또는 DECLARE GLOBAL TEMPORARY TABLE문이 테이블 스페이스를 지정하지 않았으며, 권한 부여 ID user-name에 USE 특권이 있으며 충분한 페이지 크기를 갖는(최소한 pagesize) 올바른 유형(선언된 임시 테이블의 경우 USER TEMPORARY)의 테이블 스페이스를 찾을 수 없습니다.

테이블의 충분한 페이지 크기는 행의 바이트 수나 컬럼 수에 따라 결정됩니다.

사용자 응답:

최소한 페이지 크기가 pagesize인 올바른 유형(REGULAR 또는 USER TEMPORARY)의 테이블 스페이스가 존재하며 권한 부여 ID user-name에 해당 테이블 스페이스에 대한 USE 특권이 있는지 확인하십시오.

sqlcode : -286

sqlstate : 42727

SQL0287N
SYSCATSPACE는 사용자 오브젝트에 대해 사용할 수 없습니다.
설명:

CREATE TABLE 또는 GRANT USE OF TABLESPACE문이 카탈로그 테이블용으로 예약된 테이블 스페이스 SYSCATSPACE를 지정했습니다.

사용자 응답:

다른 테이블 스페이스 이름을 지정하십시오.

sqlcode : -287

sqlstate : 42838

SQL0288N
큰 테이블 스페이스는 MANAGED BY SYSTEM을 사용하여 정의할 수 없습니다.
설명:

정의 중인 테이블 스페이스는 대형 오브젝트(LOB)와 Long 문자열에 사용됩니다. 이것은 데이터베이스 관리 스페이스에 정의된 테이블 스페이스에만 저장될 수 있습니다. 따라서, 큰 테이블 스페이스는 시스템 관리 스페이스를 사용하도록 정의할 수 없습니다.

사용자 응답:

키워드 LARGE를 제거하거나 CREATE TABLESPACE문에서 MANAGED BY DATABASE로 변경하십시오.

sqlcode : -288

sqlstate : 42613

SQL0289N
테이블 스페이스 tablespace-name에 새 페이지를 할당할 수 없습니다.
설명:

다음 조건 중 하나가 하나 이상의 데이터베이스 파티션에서 참입니다.

1
이 SMS 테이블 스페이스에 지정된 컨테이너 중 하나가 최대 파일 크기에 도달했습니다. 이로 인해 오류가 발생할 수도 있습니다.
2
이 DMS 테이블 스페이스에 지정된 모든 컨테이너가 가득 찼습니다. 이로 인해 오류가 발생할 수도 있습니다.
3
이 DMS 테이블 스페이스에 대한 테이블 스페이스 오브젝트 테이블이 가득 찼습니다.
4
재조정을 진행 중이지만 새로 추가된 스페이스를 사용 가능하게 할 만큼 충분히 진행되지는 않았습니다.
5
너무 작은 컨테이너로 경로 재지정된 리스토어를 수행 중입니다.
6
경로 재지정된 리스토어 다음에 롤 포워드를 수행 중이며, 이 테이블 스페이스에 지정된 모든 컨테이너가 가득 찼습니다.
7
컨테이너 추가를 건너뛰는 롤 포워드를 수행 중이며, 이 테이블 스페이스에 지정된 모든 컨테이너가 가득 찼습니다.
8
5개 미만의 사용 가능한 Extent로 테이블 스페이스를 작성하려고 했습니다.
9
자공 크기 조정 테이블 스페이스가 최대 크기에 도달했고 모든 컨테이너가 가득 찼습니다. 또한 컨테이너를 확장 또는 추가하기 위한 현재 크기와 최대 크기 사이의 스페이스가 부족하여 스페이스의 자동 늘리기가 불가능합니다.
10
컨테이너 스페이스의 균등 분배가 이루어지지 않는 초기 크기의 값으로 자동 스토리지 테이블 스페이스를 작성합니다. 따라서 보다 큰 값이 사용되지만 이 값이 지정된 최대 크기보다 큽니다.
11
자동 크기 조정에 사용 가능한 DMS 테이블 스페이스가 최대 크기에 도달하지 않았지만 컨테이너가 존재하는 파일 시스템 중 하나가 가득 차 컨테이너를 확장할 수 없습니다.
12
자동 크기 조정에 사용 가능한 DMS 테이블 스페이스가 최대 크기에 도달하지 않았지만 테이블 스페이스가 상주하는 파일 시스템이 가득 차지 않았습니다. 하지만, 컨테이너 조작(또는 후속 균형 재조정)이 진행 중이며 완료될 때까지 자동 크기 조정 기능이 일시중단됩니다.
사용자 응답:

오류의 원인에 따라 해당 조치를 수행하십시오.

1
DMS TABLESPACE로 전환하거나 (디렉토리 수) >= (최대 테이블 크기 / 최대 파일 크기)가 되도록 더 많은 디렉토리(PATH)를 사용하여 SMS TABLESPACE를 재작성하십시오. 최대 파일 크기는 운영 체제에 따라 다릅니다.
2
균형 재조정 프로그램이 새 페이지를 사용 가능하게 만든 후에 DMS 테이블 스페이스에 새 컨테이너를 추가하고 조작을 다시 시도하십시오.
3
이 DMS 테이블 스페이스에서 불필요한 테이블을 삭제하십시오.
4
균형 재조정 프로그램이 완료될 때까지 기다리십시오.
5
더 큰 컨테이너로 경로 재지정된 리스토어를 다시 수행하십시오.
6
더 큰 컨테이너로 경로 재지정된 리스토어를 다시 수행하십시오.
7
컨테이너 추가를 허용하여 롤 포워드를 다시 수행하거나, 더 큰 컨테이너로 경로 재지정된 리스토어를 수행하십시오.
8
CREATE TABLESPACE문을 다시 제출하여 테이블 스페이스에 적어도 다섯 개의 사용 가능한 Extent가 포함되도록 하십시오.
9
테이블 스페이스의 최대 크기를 늘리십시오.
10
초기 크기를 줄이거나 테이블 스페이스의 최대 크기를 늘리십시오.
11
테이블 스페이스에 컨테이너의 새 스트라이프 세트를 추가하십시오. 기존 컨테이너는 더 이상 확장되지 않으며 테이블 스페이스의 마지막 범위에 있는 새 컨테이너만이 자동 크기 조정 시에 확장됩니다.
12
조작 및 후속 균형 재조정이 완료될 때까지 기다리십시오.

sqlcode : -289

sqlstate : 57011

SQL0290N
테이블 스페이스 액세스가 허용되지 않습니다.
설명:

유효하지 않은 상태에 있는 테이블 스페이스에 액세스하려는 프로세스가 허용되지 않습니다.

  • 테이블 스페이스가 Quiesce 상태에 있는 경우, Quiesce 상태에 있는 테이블 스페이스도 보유하고 있는 프로세스만 테이블 스페이스에 액세스할 수 있습니다.
  • 테이블 스페이스가 다른 상태에 있는 경우, 지정된 조치를 수행하고 있는 프로세스만 테이블 스페이스에 액세스할 수 있습니다.
  • 활성화된 시스템 또는 선언된 임시 테이블을 포함하는 시스템 또는 사용자 임시 테이블 스페이스는 삭제할 수 없습니다.
  • 테이블 스페이스가 "리스토어 보류" 상태가 아니면, 컨테이너 목록을 설정하기 위해 SET CONTAINER API를 사용할 수 없습니다.
사용자 응답:

가능한 조치는 다음과 같습니다.

  • 테이블 스페이스가 Quiesce 상태에 있는 경우, 테이블 스페이스에서 Quiesce 상태의 공유 또는 갱신 상태를 획득하십시오. 또는 테이블 스페이스를 Quiesce 재설정하십시오.
  • 테이블 스페이스가 다른 상태에 있는 경우, 테이블 스페이스에 액세스하기 전에 테이블 스페이스가 정상적인 상태로 리턴될 때까지 기다리십시오.

테이블 스페이스 상태에 대한 추가 정보는 관리 안내서를 참조하십시오.

sqlcode : -290

sqlstate : 55039

SQL0291N
테이블 스페이스에서 상태 전이가 허용되지 않습니다.
설명:

테이블 스페이스 상태를 변경하려고 시도했습니다. 새 상태가 테이블 스페이스의 현재 상태와 호환되지 않거나, 특정 상태를 해제하려고 했지만 테이블 스페이스가 그 상태가 아닙니다.

사용자 응답:

테이블 스페이스 상태는 테이블 스페이스의 현재 상태에 따라 백업 시기, 로드 완료 시기, 롤 포워드 완료 시기 등에 변경됩니다. 테이블 스페이스 상태에 대한 추가 정보는 시스템 관리 안내서를 참조하십시오.

sqlcode : -291

sqlstate : 55039

SQL0292N
내부 데이터베이스 파일을 작성할 수 없습니다.
설명:

내부 데이터베이스 파일을 작성할 수 없습니다.

사용자 응답:

데이터베이스 인스턴스 소유자가 파일이 들어 있는 디렉토리에 액세스할 수 있는지(예: 마운트되어 있는지) 및 쓸 수 있는지를 확인하십시오.

sqlcode : -292

sqlstate : 57047

SQL0293N
테이블 스페이스 컨테이너에 액세스하는 중에 오류가 발생했습니다.
설명:

이 오류는 다음 중 한 가지 조건에 의해 발생할 수 있습니다.

  • 컨테이너(디렉토리, 파일 또는 원시 디바이스)가 없습니다.
  • 컨테이너가 적절한 테이블 스페이스의 소유인 것으로 태그가 붙어 있지 않습니다.
  • 컨테이너 태그가 손상되었습니다.

이 오류는 데이터베이스 시작 및 ALTER TABLESPACE SQL문 처리 중에 리턴될 수 있습니다.

사용자 응답:

다음 조치를 시도하십시오.

  1. 디렉토리, 파일 또는 디바이스가 존재하면 파일 시스템이 마운트되어 있는지(별도의 파일 시스템에 있는 경우) 점검하십시오. 데이터베이스 인스턴스 소유자가 컨테이너를 읽고 쓸 수 있어야 합니다.
  2. 최신 백업이 있는 경우, 테이블 스페이스나 데이터베이스를 리스토어해 보십시오. 컨테이너가 잘못되었거나 컨테이너가 DEVICE 유형이 아니어서 리스토어에 실패하면, 먼저 수동으로 컨테이너를 제거하십시오.

SWITCH ONLINE 옵션으로 ALTER TABLESPACE SQL문을 처리하는 중에 오류가 리턴되는 경우, 위에 설명된 대로 문제점을 해결한 후 명령문을 다시 발행하십시오.

오류가 계속되면, IBM 서비스 담당자에게 문의하십시오.

sqlcode : -293

sqlstate : 57048

SQL0294N
컨테이너가 이미 사용 중입니다.
설명:

테이블 스페이스 컨테이너는 공유하지 못할 수도 있습니다. 가능한 이 오류의 원인은 다음과 같습니다.

  • CREATE TABLESPACE 또는 ALTER TABLESPACE문에 다른 테이블 스페이스에서 이미 사용 중인 컨테이너가 포함되어 있습니다.
  • CREATE TABLESPACE 또는 ALTER TABLESPACE문에 삭제되었으나 DROP문이 커미트되지 않은 테이블 스페이스의 컨테이너가 포함되어 있습니다.
  • 동일한 실제 노드에 있는 LIKE 노드의 컨테이너에 사용된 노드를 추가하는 데 ALTER NODEGROUP문이 사용되었습니다. 따라서 이러한 컨테이너가 이미 사용 중입니다.
  • CREATE TABLESPACE 또는 ALTER TABLESPACE문이 실제 단일 노드에 있는 둘 이상의 논리 노드에서 동일한 컨테이너를 사용하려고 합니다. 동일한 실제 노드에 있는 둘 이상의 노드에서 동일한 컨테이너를 사용할 수 없습니다.
  • ADD NODE 명령이나 API가 동일한 실제 노드에 있는 LIKE 노드의 시스템 임시 테이블 스페이스에서 컨테이너를 사용했습니다. 따라서 이러한 컨테이너가 이미 사용 중입니다.
  • CREATE TABLESPACE 또는 ALTER TABLESPACE문에 더 이상 존재하지 않지만 제대로 삭제되지 않은 다른 데이터베이스의 DMS 컨테이너가 포함되어 있습니다. 컨테이너는 실제로 사용 중이 아니지만, 사용 중인 것으로 태그가 표시되어 있습니다. 따라서 DB2는 태그를 삭제할 때까지 컨테이너를 사용하도록 허용하지 않습니다. 그러나 태그를 삭제할 때 같은 데이터베이스 또는 다른 데이터베이스에서 해당 컨테이너를 사용하고 있지 않은지 확인하는 것이 매우 중요합니다. 태그를 삭제할 때 컨테이너가 사용 중이면 관련된 데이터베이스가 손상됩니다.
사용자 응답:

컨테이너가 고유한지 확인하십시오.

  • CREATE 또는 ALTER TABLESPACE문의 경우, 테이블 스페이스에 다른 컨테이너를 지정하십시오.
  • 삭제된 테이블 스페이스의 컨테이너를 포함하는 CREATE 또는 ALTER TABLESPACE문의 경우, DROP문이 커미트된 후에 다시 시도하거나 다른 컨테이너를 지정하십시오.
  • ALTER NODEGROUP문의 경우, WITHOUT TABLESPACES절을 사용하여 명령문을 다시 발행한 다음, ALTER TABLESPACE문을 사용하여 새 노드의 고유 컨테이너를 작성하십시오.
  • 실제 노드에 둘 이상의 논리 노드가 있는 환경의 CREATE 또는 ALTER TABLESPACE문의 경우, 이러한 논리 노드에 동일한 컨테이너가 지정되지 않았는지 확인하십시오.
  • ADD NODE 명령 또는 API의 경우, WITHOUT TABLESPACES절을 사용하여 명령문을 다시 발행한 다음, ALTER TABLESPACE문을 사용하여 새 노드에서 시스템 임시 테이블 스페이스의 고유 컨테이너를 작성하십시오.
  • 더 이상 존재하지 않지만 제대로 삭제되지 않은 데이터베이스에 속하는 DMS 컨테이너를 사용하려는 경우, db2untag 유틸리티를 사용하여 DB2 컨테이너 태그를 제거할 수 있습니다. 이 태그가 제거되면, DB2가 컨테이너를 사용 가능한 것으로 간주하므로 CREATE TABLESPACE 또는 ALTER TABLESPACE문에 컨테이너를 사용할 수 있습니다.

    주: db2untag를 사용할 때는 최대한 주의하십시오. 데이터베이스에서 계속해서 사용 중인 컨테이너에 대해 db2untag 명령을 발행하면, 원래 컨테이너를 사용했던 데이터베이스와 현재 컨테이너를 사용 중인 데이터베이스가 모두 손상됩니다.

sqlcode : -294

sqlstate : 42730

SQL0295N
테이블 스페이스의 모든 컨테이너 이름 길이의 합계가 너무 깁니다.
설명:

컨테이너의 목록을 저장하는 데 필요한 총 스페이스가 테이블 스페이스 파일에서 이 테이블 스페이스에 할당된 스페이스를 초과합니다.

사용자 응답:

다음 중 하나 이상을 시도하십시오.

  • 기호 링크, 마운트된 파일 시스템 등을 사용하여 새 컨테이너 이름의 길이를 줄이십시오.
  • 테이블 스페이스를 백업한 후 데이터베이스 관리 유틸리티를 사용하여 컨테이너의 수 및/또는 이름의 길이를 줄이십시오. 테이블 스페이스를 새 컨테이너로 리스토어하십시오.

sqlcode : -295

sqlstate : 54034

SQL0296N
테이블 스페이스 한계가 초과되었습니다.
설명:

이 데이터베이스에 최대 테이블 스페이스 수가 들어 있습니다. 더 이상 작성할 수 없습니다.

사용자 응답:

더 이상 사용되지 않는 테이블 스페이스를 삭제하십시오. 작은 테이블 스페이스 중 하나로 모든 데이터를 이동시킨 다음, 나머지 테이블 스페이스를 삭제하여 결합하십시오.

sqlcode : -296

sqlstate : 54035

SQL0297N
컨테이너 또는 스토리지 경로의 경로 이름이 너무 깁니다.
설명:

다음 조건 중 하나가 해당됩니다.

  • 컨테이너 이름을 지정하는 완전한 경로가 허용되는 최대 길이를 초과합니다(254자). 컨테이너가 데이터베이스 디렉토리에 대한 상대 경로로 지정된 경우, 이 두 값의 병합이 최대 길이를 초과하면 안됩니다. 자세한 내용은 관리 통지 로그에서 볼 수 있습니다.
  • 스토리지 경로가 허용되는 최대 길이를 초과합니다(190자).
사용자 응답:

경로 길이를 줄이십시오.

sqlcode : -297

sqlstate : 54036

SQL0298N
컨테이너 경로가 잘못되었습니다.
설명:

컨테이너 경로가 다음 요구사항 중 하나를 위반합니다.

  • 컨테이너 경로는 완전하고 유효한 절대 경로이거나, 유효한 상대 경로여야 합니다. 후자의 경우, 데이터베이스 디렉토리에 대해 상대적인 것으로 해석됩니다.
  • EXTEND, REDUCE, RESIZE 및 DROP 조작의 경우, 지정된 컨테이너 경로가 존재해야 합니다.
  • 이 경로는 인스턴스 ID에 읽기 및 쓰기 액세스가 가능해야 합니다. (UNIX 기반 시스템에서 파일 사용 권한을 확인하십시오.)
  • 컨테이너는 명령에 지정된 유형(디렉토리, 파일 또는 디바이스)이어야 합니다.
  • 시스템 관리 테이블 스페이스의 컨테이너(디렉토리)는 컨테이너로 지정될 때 비어 있어야 하고 다른 컨테이너 아래에 중첩되면 안됩니다.
  • 한 데이터베이스의 컨테이너는 다른 데이터베이스 디렉토리의 아래에 위치해서는 안되고, 다른 데이터베이스의 디렉토리로 보이는 디렉토리 아래에 있을 수 없습니다. 그러면, SQLnnnnn 형식(여기서 n은 숫자)의 디렉토리가 제외됩니다.
  • 컨테이너는 운영 체제의 파일 크기 한계를 초과하지 않아야 합니다.
  • 삭제된 데이터베이스 관리 테이블 스페이스의 컨테이너(파일)는 모든 에이전트가 종료된 후에 시스템 관리 테이블 스페이스의 컨테이너(디렉토리)로만 재사용할 수 있으며, 반대의 경우도 마찬가지입니다.
  • 경로 재지정된 리스토어 중에, DMS 테이블 스페이스에 대해 SMS 컨테이너가 지정되었거나 SMS 테이블 스페이스에 대해 DMS 컨테이너가 지정되었습니다.
  • EXTEND, REDUCE, RESIZE 또는 DROP 조작에 대해 지정된 컨테이너 유형이 컨테이너 작성 시 지정된 컨테이너 유형(FILE 또는 DEVICE)과 일치하지 않습니다.

이 메시지는 예기치 않은 오류가 발생하여 DB2가 컨테이너에 액세스할 수 없는 경우에도 리턴됩니다.

사용자 응답:

다른 컨테이너 위치를 지정하거나 DB2에 허용되도록 컨테이너를 변경하고(예: 파일 사용 권한 변경) 다시 시도하십시오.

sqlcode : -298

sqlstate : 428B2

SQL0299N
컨테이너가 이미 테이블 스페이스에 지정되어 있습니다.
설명:

추가하려는 컨테이너가 이미 테이블 스페이스에 지정되어 있습니다.

사용자 응답:

다른 컨테이너를 선택한 후 다시 시도하십시오.

sqlcode : -299

sqlstate : 42731

 


반응형

'Software & Solution' 카테고리의 다른 글

IBM Watson Starter kit - 샘플과 데모 포함  (0) 2017.12.27