📄 sybfunc.c
字号:
#include <stdio.h>#include <sybfront.h>#include <sybdb.h>#include "./sybfunc.h"extern char errtxt[1024];int dberrflag;int CS_PUBLIC err_handler(DBPROCESS * dbproc, int severity, int dberr, int oserr, char *dberrstr, char *oserrstr){ printf("\nerror :%s|\n", errtxt); sleep(1); dbclose(dbproc); dberrflag = 1; if ((dbproc == NULL) || (DBDEAD(dbproc))) return(INT_EXIT); else return(INT_CANCEL);}int CS_PUBLIC msg_handler(DBPROCESS * dbproc, DBINT msgno, int msgstate, int severity, char *msgtext, char *srvname, char*procname, int line){ printf("msg=%s", msgtext); return(0);}void db_init(void){ /* Initialize DB-Library. */ if (dbinit() == FAIL) return; dberrhandle((EHANDLEFUNC)err_handler); dbmsghandle((MHANDLEFUNC)msg_handler); dbsetversion(DBVERSION_100); return;}int db_operation(DBPROCESS *dbproc, char *sqlstr){ int retval; dbcmd(dbproc, sqlstr); retval = (int)dbsqlexec(dbproc); return(retval);} DBPROCESS* db_connect(char *dbname,char *usrname,char *usrpwd){ DBPROCESS *dbproc; LOGINREC *login; login = dblogin(); DBSETLUSER(login, usrname); DBSETLPWD(login, usrpwd); dbproc = dbopen(login, NULL); dbloginfree(login); if(dbproc!=NULL) dbuse(dbproc, dbname); else return(NULL); dberrflag = 0; db_operation(dbproc,"begin tran"); return(dbproc);}void db_disconnect(DBPROCESS* dbproc){ db_operation(dbproc,"commit"); dbclose(dbproc); dbexit();}/*int db_operation(DBPROCESS *dbproc, char *sqlstr){ int request=0; if(dberrflag == 1) return(1); dbcmd(dbproc, sqlstr); dbsqlsend(dbproc); while(dbsqlok(dbproc) == FAIL){ sleep(1); return(1); request++; if (request = 3) return(1); //db fault } return(0);}*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -