codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
#include <string.h> #include <stdio.h> #include <stdlib.h> #include <sqlca.h> /* SQL Communications Area */ #include "oracle_interface.h" #define UNAME_LEN 20 /* Varchar limits */ #define PWD_LEN 40 #define DBTNS_LEN 20 /* Varchar limits */ EXEC SQL BEGIN DECLARE SECTION; VARCHAR username[UNAME_LEN]; /* SQL vars for */ VARCHAR password[PWD_LEN]; /* username and passwd */ VARCHAR dbtns[DBTNS_LEN]; VARCHAR host_cd[25]; EXEC SQL END DECLARE SECTION; void sql_error(); void main(void){ strncpy((char *) username.arr, "riscox", UNAME_LEN); username.len = strlen((char *) username.arr); strncpy((char *) password.arr, "riscox", PWD_LEN); password.len = strlen((char *) password.arr); strncpy((char *) dbtns.arr, "mcoracle", DBTNS_LEN); dbtns.len = strlen((char *) dbtns.arr); EXEC SQL WHENEVER SQLERROR DO sql_error("ORACLE error under function db_connect in oracle_interface.c\n"); EXEC SQL CONNECT :username IDENTIFIED BY :password USING :dbtns; EXEC SQL WHENEVER SQLERROR DO sql_error ( "ERROR : Oracle under function subscribe in oracle_interface.c"); EXEC SQL DECLARE s_cursor CURSOR FOR SELECT cd_negocio FROM cad_atv_cotacoes WHERE NVL(in_enfoque, 0) = 0; EXEC SQL OPEN s_cursor; EXEC SQL WHENEVER NOT FOUND DO break; while(1){ EXEC SQL FETCH s_cursor INTO :host_cd; printf("Host var, cdnegocio = %s\n", host_cd); }// while(1) EXEC SQL CLOSE s_cursor; EXEC SQL COMMIT WORK RELEASE; } void sql_error(msg) char *msg; { char err_msg[128]; int buf_len, msg_len; EXEC SQL WHENEVER SQLERROR CONTINUE; printf("\n%s\n", msg); buf_len = sizeof (err_msg); sqlglm(err_msg, &buf_len, &msg_len); if (msg_len > buf_len) msg_len = buf_len; printf("%.*s\n", msg_len, err_msg); EXEC SQL ROLLBACK RELEASE; exit(1); }
Private
[
?
]
Run code
Submit