본문 바로가기

C-Language/Pro C, UPDATE

Pro C, UPDATE

Pro C, UPDATE example

#include <stdio.h>
#include "sqlca.h"

int main(void) {

 EXEC SQL BEGIN DECLARE SECTION;
     char *connstr = "scott/ojtit@orcl";
     int empno, _empno;
     char *_job;
     int deptno, _deptno;
     VARCHAR job[20];
 EXEC SQL END DECLARE SECTION;
 
 _empno = 1000;
 _job = "CLERK";
 _deptno = 20;
 
 EXEC SQL CONNECT :connstr;
 
 if(sqlca.sqlcode == 0) {
  printf("오라클 연결 성공\n");
 }else{
  printf("오류 : 오라클 연결 실패\n");
 }
 
 EXEC SQL
  UPDATE
      EMPLOYEES
  SET
      job = :_job,
      deptno = :_deptno
  WHERE
      empno = :_empno;
 
 EXEC SQL COMMIT WORK;
 
 EXEC SQL
  SELECT
      empno, job, deptno
  INTO
      :empno, :job, :deptno
  FROM
      EMPLOYEES
  WHERE
      empno = :_empno;
 
 job.arr[job.len] = '\0';
   
 printf("empno=%d, job=%s, deptno=%d \n", empno, job.arr, deptno);
 
 printf("프로그램 종료\n");
 return 0;
 
}