배열을 한번에 insert 할려구 합니다.
MAX_QUERY --> 24
EXEC SQL BEGIN DECLARE SECTION;
varchar vPrjNm[MAX_QUERY][PRJ_NM + 1];
int dSendId[MAX_QUERY];
EXEC SQL END DECLARE SECTION;
for (i = 0; i < dMaxLoop; i++)
{
memset(vPrjNm.arr, ''\0'',sizeof(vPrjNm.arr));
dSendId = 0;
vPrjNm.len = 0;
}
strcpy((char *)vPrjNm.arr,(char *)pSbs->vPrjNm);
dSendId= pSbs->dSendId;
EXEC SQL INSERT INTO WNT (PRJ_NM,SEND_ID) VALUES(:vPrjNm,:dSendId);
이렇게 해서 넣을 라구 하는데요
배열 만큼 값이 들어 가지 않고 10개나 이렇게 들어가면
ORA-01400: cannot insert NULL into ("SCOTT"."WNT...
이런 에러가 납니다.
배열을 다 채우지 않고는 안되는건지 궁금 합니다.
답변좀 부탁 드리겠습니다.
|