http://www.opensourcetesting.org/
성능테스트 툴 목록 사이트
http://www.opensourcetesting.org/performance.php
IBM developerWorks에서 독자, 필자, 리뷰블로거 등이 함께하는 즐거운 이야기 장을 마련합니다. 이름하여, ‘개발자들의 수다’ 입니다.
이 행사는 '현장에서 참여자들이 토론 주제를 정해서 실시간으로 자유로이 이합집산하면서 토론을 진행'하는 OST(Open Space Technology) 형식으로 진행할 예정입니다.
정해진 아젠다 없이, 현장에서 함께 얘기 나눌만한 주제를 정하거나 건의해서 독자, 필자, 리뷰블로거들이 편안하게 생각을 나누고 그 과정에서 서로 영감을 받을 수 있는 행사입니다.
개발자로서의 진로, 고민이나 기술 및 트렌드에 대한 난상 토론 등 어떤 내용이어도 무방합니다.
독자, 필자, 리뷰블로거가 한자리에 모일 수 있는 올해 처음이자 마지막으로 열리는 이번 행사에서 개발자들의 수다가 활발하게 이뤄지도록 많은 분들의 참석을 기대합니다.
오라클과 알티베이스의 실행 시간 에러 처리를 위한 SQLSTATE, SQLCODE, SQLCA 값의 차이점을 비교한다.
내장 SQL문의 수행 결과를 저장하는 구조체로서 알티베이스에서 사용하는 구성 요소는 sqlcode, sqlerrm.sqlerrmc, sqlerrm.sqlerrml, sqlerrd[2]이며 오라클의 SQLCA에만 존재하고 알티베이스에서 지원하지 않는 구성 요소는 사용할 수 없다.(e.g sqlwarn)
오라클
EXEC SQL INCLUDE SQLCA;
또는
#include <sqlca.h>
알티베이스
별도의 선언없이 사용할수 있다.
오라클
Status Code | Description |
---|---|
0 | SUCCESS |
>0 | No row returned |
<0 | database, system, network , application error |
알티베이스
Status Code | Description |
---|---|
SQL_SUCCESS | SUCCESS |
SQL_SUCCESS_WITH_INFO | |
SQL_NO_DATA | No row returned |
SQL_ERROR | |
SQL_INVALID_HANDLE |
오라클과 알티베이스에서 sqlerrmc, sqlerrml은 용도와 사용법이 동일하다.
오라클
INSERT/UPDATE/DELETE/SELECT INTO 연산에 의해 영향받은 레코드 개수(누적 레코드 개수)
알티베이스
INSERT /UPDATE /DELETE 연산에 의해 영향받은 레코드 개수
SELECT 문이나 fetch문 수행시 출력 호스트 변수가 배열일 때 리턴되는 레코드 개수
SQLSTATE에는 상태 코드가 저장되며 이 상태 코드를 통해 에러와 예외 상황의 종류를 알 수 있다.
오라클
전처리기의 명령행 옵션으로 MODE=ANSI를 선언하고 사용
char SQLSTATE[6];
알티베이스
별도의 선언 없이 사용한다.
오라클과 알티베이스의 SQLSTATE 상태 코드는 그 의미와 코드값이 다르므로 코드 테이블에 따라서 변환되어야 한다.
SQLCODE에는 내장 SQL문 수행 후 에러 코드가 저장된다.
오라클
전처리기의 명령행 옵션으로 MODE=ANSI를 선언하고 사용
long SQLCODE;
알티베이스
별도의 선언 없이 사용할수 있다.
알티베이스에서의 SQLCODE의 자료형은 int 형이다.
오라클
sqlca.sqlcode와 동일한 상태 코드 값이 저장된다.
알티베이스
Status Code | Description |
---|---|
0 | 내장 SQL문을 성공적으로 수행한 경우. 즉, sqlca.sqlcode 값이 SQL_SUCCESS 인 경우 |
1 | 내장 SQL문을 수행하였으나 예외 상황이 발견된 경우. 즉, sqlca.sqlcode 값이 SQL_SUCCESS_WITH_INFO 인 경우 |
100 | SELECT문이나 FETCH문 수행 후 리턴되는 레코드가 없는 경우. 즉, sqlca.sqlcode 값이 SQL_NO_DATA인 경우 |
-1 | 내장 SQL문 수행 시 에러가 발생하였지만 해당 에러코드가 없는 경우. 이 때의 sqlca.sqlcode 값은 SQL_ERROR 이다. |
-2 | 데이터베이스 서버와 연결하지 않고 내장 SQL문을 수행한 경우, 즉, sqlca.sqlcode 값이 SQL_INVALID_HANDLE 인 경우 |
위의 값 이외에 SQLCODE에 설정되는 경우는 에러 메시지가 있는 경우로서 해당 SQL에서 에러가 발생한 경우이다. |
[출처] sqlca.sqlcode 값의 정리|작성자 choibs777