C언어

[ec/proc/esql/프로씨 강좌] 호스트변수를 사용해서 where에서 사용하는 방법

xemaker 2017. 2. 20. 09:46
main(int argc, char *argv[]){

$char work1[100];
$char work2[100];
memset(work1,0x00,sizeof(work1));
memset(work2,0x00,sizeof(work2));
memcpy(work2,"a2",sizeof(work2));

EXEC SQL connect to "dbname";

EXEC SQL DECLARE test_cur SCROLL CURSOR FOR

SELECT a
FROM test
WHERE a=:work2
;


EXEC SQL OPEN test_cur;

while(1){

  EXEC SQL FETCH NEXT test_cur INTO :work1;

if(sqlca.sqlcode==100){
break;
}else if(sqlca.sqlcode!=0)
printf("error=[%d]\n",sqlca.sqlcode);
}

printf("work1=[%s]\n",work1;
}

EXEC SQL CLOSE test_cur;
EXEC SQL FREE test_cur;
}

이렇게 where 절을 쓰려면

WHERE a=:work2

이런식으로 호스트변수를 쓰면 된다.