odbcconnect3.c
来自「b树实现源码,linux和unix下运行,速度快,极好用」· C语言 代码 · 共 95 行
C
95 行
/* close the connection and then call commit,it should fail. * AUTHOR : Jitendra Lenka */ #include<stdio.h>#include<stdlib.h>#include<sql.h>#include<sqlext.h>#include<string.h> //*************************************************************************inline void checkrc(int rc,int line){ if(rc) { printf("ERROR %d at line %d\n",rc,line); exit(1); }}//*************************************************************************int main(){ SQLHENV env; SQLHDBC dbc; SQLHSTMT stmt; SQLRETURN ret; SQLCHAR outstr[1024]; SQLSMALLINT outstrlen; // Aloocate an environment handle ret=SQLAllocHandle(SQL_HANDLE_ENV,SQL_NULL_HANDLE,&env); checkrc(ret,__LINE__); //we need odbc3 support SQLSetEnvAttr(env,SQL_ATTR_ODBC_VERSION,(void*)SQL_OV_ODBC3,0); //ALLOCATE A Connection handle ret = SQLAllocHandle(SQL_HANDLE_DBC,env,&dbc); checkrc(ret,__LINE__); // connect to the DSN mydsn ret = SQLConnect (dbc, (SQLCHAR *) "test", (SQLSMALLINT) strlen ("test"), (SQLCHAR *) "root", (SQLSMALLINT) strlen ("root"), (SQLCHAR *) "manager", (SQLSMALLINT) strlen ("")); if(SQL_SUCCEEDED(ret)) { printf("\nConnected to the Data Source successfully..\n"); } else { printf("error in connection\n"); ret = SQLFreeHandle(SQL_HANDLE_DBC,dbc); checkrc(ret,__LINE__); ret = SQLFreeHandle(SQL_HANDLE_ENV,env); checkrc(ret,__LINE__); return 1; } ret = SQLDisconnect(dbc); checkrc(ret,__LINE__); // call to commit ret = SQLTransact(env,dbc,SQL_COMMIT); int rettype = ret; if(ret) printf("After disconnect,commit failed\n"); else printf("After disconenct, commit passed\n"); ret = SQLFreeHandle(SQL_HANDLE_DBC,dbc); checkrc(ret,__LINE__); ret = SQLFreeHandle(SQL_HANDLE_ENV,env); checkrc(ret,__LINE__); if (rettype == 0) return 1; return 0;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?