/* 커서 선언 */
EXEC SQL DECLARE movie_cursor CURSOR FOR
SELECT m_num, m_genre, m_name, m_age, m_dir, m_len
FROM movie;
EXEC SQL OPEN movie_cursor; /* 커서 open */
EXEC SQL WHENEVER NOT FOUND DO break;
while (1) {
EXEC SQL FETCH movie_cursor
INTO :i_m_num, :i_m_genre, :i_m_name, :i_m_age, :i_m_dir, :i_m_len;
if (sqlca.sqlcode < 0) {
/* 오류 발생 시 */
printf("\n");
printf("@ 데이터를 모두 출력했습니다.\n");
break;
}
/* 데이터 출력 */
}
EXEC SQL CLOSE movie_cursor;
***********************************
fetch 들어가자마자
세그멘테이션 오류 (core dump) 라는 오류 뜨면서 강제종료돼
살려줘 뭐가 문제지
커서 쓰는 법이 잘못됐네
어느 부분이죠 흑흑
한번이라도 문법이랑 매뉴얼 확인은 한거냐?? 내 부하가 이딴거 가져왔으면 바로 설교타임확정
그래서 뭐가 문젠데요? 모르겠는데
일단 declare open 까진 제대로 된 것 같은데
이정도는 스스로 문서 보고 찾아서 고치라는 소린데 못 알아듣고 계속 떠먹여달라고 하네
일단 ROWTYPE 를 정의하고 fetch 커서 into 로우타입
58.151.// ㅇㅇ 진짜 내 부하라는 가정하에 경고를 줬는데도 "뭐가 문제? 모르겠삼?" 하면... 설교타임 때려치우고 정신이 혼미해질때까지 갈궈버릴듯
아니 쉬벌 제가 그냥 문제 그대로 갖다 주고 풀어달래는 것도 아니고 어떤 오류인지만이라도 알려만 주면 감사한건데
사회인들이신거같은데 조무래기 학생한테 알려줘서 정말 감사드리는데 저도 최소한 학교에서 뿌려준 그대로 코드 양식 따와서 해보는데도 안되니까 물어보는 거에요
내 코드의 어떤 부분이 다른지 계속 생각을 해 봤는데도 답이 안나와서 테이블에 변수 하나만 두고 페치해봤는데도 안 돼가지고 계속 머리싸매고있었는데
아 그냥 멍청해서 죄송합니다 그냥 백날 혼자 공부해서 알아내는게 낫겠죠