Defines | |
| #define | ORA_NOT_FOUND |
| no data found. | |
| #define | ORA_FETCH_NULL |
| fetched column value is NULL. | |
| #define | IS_ORA_NULL(s) |
| Pro*C null. | |
| #define | ROWS_AFFECTED |
| rows affected after insert or update or delete. | |
| #define | ROW_NUMBER |
| current row number at fetched cursor. | |
| #define | sql_err_break(s) |
| break current loop when sql error occurred. | |
| #define | sql_found_break(s) |
| break current loop when data found. | |
| #define | sql_found_continue(s) |
| continue current loop when data found. | |
| #define | sql_found_rtn_true(s) |
| return true in current function when data found. | |
| #define | sql_found_rtn_false(s) |
| return false in current function when data found. | |
| #define | sql_notfound_break(s) |
| break current loop when no data found. | |
| #define | sql_notfound_continue(s) |
| continue current loop when no data found. | |
| #define | sql_notfound_rtn_true(s) |
| return true in current function when no data found. | |
| #define | sql_notfound_rtn_false(s) |
| return false in current function when no data found. | |
Functions | |
| void | sql_err_rpt (sqlca_t sc, void *stv[], unsigned int stl[], const char *file, const char *func, int line, bool bexit) |
| print sql error report, it is very useful for SQL debuging. | |
| int | sql_open_conn (const char *db_name, const char *conn_str) |
| create a new connection. | |
| void | sql_close_conn (int db_sn) |
| close current connection. | |
| void | sql_close_all (void) |
| rollback and close all database sessions. | |
| void | sql_commit (int db_sn) |
| do commit at current transaction. | |
| void | sql_rollback (int db_sn) |
| do rollback at current transaction. | |
| #define IS_ORA_NULL | ( | s | ) |
Pro*C null.
| #define ORA_FETCH_NULL |
fetched column value is NULL.
| #define ORA_NOT_FOUND |
no data found.
| #define ROW_NUMBER |
current row number at fetched cursor.
| #define ROWS_AFFECTED |
rows affected after insert or update or delete.
| #define sql_err_break | ( | s | ) |
break current loop when sql error occurred.
| #define sql_found_break | ( | s | ) |
break current loop when data found.
| #define sql_found_continue | ( | s | ) |
continue current loop when data found.
| #define sql_found_rtn_false | ( | s | ) |
return false in current function when data found.
| #define sql_found_rtn_true | ( | s | ) |
return true in current function when data found.
| #define sql_notfound_break | ( | s | ) |
break current loop when no data found.
| #define sql_notfound_continue | ( | s | ) |
continue current loop when no data found.
| #define sql_notfound_rtn_false | ( | s | ) |
return false in current function when no data found.
| #define sql_notfound_rtn_true | ( | s | ) |
return true in current function when no data found.
| void sql_close_all | ( | void | ) |
| void sql_close_conn | ( | int | db_sn | ) |
close current connection.
| db_sn | the current database session number. |
| void sql_commit | ( | int | db_sn | ) |
do commit at current transaction.
| db_sn | the current database session number. |
| void sql_err_rpt | ( | sqlca_t | sc, | |
| void * | stv[], | |||
| unsigned int | stl[], | |||
| const char * | file, | |||
| const char * | func, | |||
| int | line, | |||
| bool | bexit | |||
| ) |
print sql error report, it is very useful for SQL debuging.
usage: just put this sample code in .pc source.
exec sql whenever sqlerror do sql_err_rpt (sqlca, sqlstm.sqhstv, sqlstm.sqhstl, __FILE__, __FUNCTION__, __LINE__, false or true);
| sc | use sqlca always. | |
| stv | use sqlstm.sqhstv always. | |
| stl | use sqlstm.sqhstl always. | |
| file | use __FILE__ always. | |
| func | use __FUNCTION__ always. | |
| line | use __LINE__ always. | |
| bexit | if program will call exit(). |
| int sql_open_conn | ( | const char * | db_name, | |
| const char * | conn_str | |||
| ) |
create a new connection.
| db_name | just give this database a name, we use SID or services_name in tnsnames.ora always. | |
| conn_str | a connection string in Pro*C format. ex: "user/pass@services_name." |
| void sql_rollback | ( | int | db_sn | ) |
do rollback at current transaction.
| db_sn | the current database session number. |
1.5.9