c oracle 框架
在软件开发的过程中,使用框架可以大大加快开发进度和减轻开发者的工作量。其中,C Oracle框架应该是大家非常熟悉并经常使用的一种框架。
C Oracle框架的主要作用是在C语言中对Oracle数据库进行操作,让开发者能够更加方便地进行数据库相关的开发。下面我们来举几个例子来说明C Oracle框架的具体用途。
/*连接数据库*/
#include
#include
#include
OCIEnv *envhp;
OCIError *errhp;
OCIServer *srvhp;
OCIStmt *stmthp;
OCISession *usrhp;
OCISvcCtx *svchp;
OCIParam *parmp;
int main(){
OCIInitialize((ub4) OCI_OBJECT,&envhp,(dvoid *)0,(dvoid * (*)(dvoid *,size_t)) 0,(dvoid * (*)(dvoid *, dvoid *, size_t))0,(void (*)(dvoid *, dvoid *)) 0 );
OCIHandleAlloc((dvoid *) envhp, (dvoid **) &errhp, OCI_HTYPE_ERROR, 0, (dvoid **) 0);
OCIHandleAlloc((dvoid *) envhp, (dvoid **) &srvhp, OCI_HTYPE_SERVER, 0, (dvoid **) 0);
OCIServerAttach (srvhp, errhp, (text *) "ORCL", 4, OCI_DEFAULT);
OCIHandleAlloc ((dvoid *) envhp, (dvoid **) &svchp, (ub4) OCI_HTYPE_SVCCTX, 0, (dvoid **) 0);
OCIAttrSet ((dvoid *) svchp, (ub4) OCI_HTYPE_SVCCTX, (dvoid *) srvhp, (ub4) 0, OCI_ATTR_SERVER, errhp);
OCIHandleAlloc((dvoid *) envhp, (dvoid **) &usrhp, OCI_HTYPE_SESSION, 0, (dvoid **) 0);
OCIAttrSet((dvoid *) usrhp, (ub4) OCI_HTYPE_SESSION, (dvoid *)"SCOTT", (ub4)strlen("SCOTT"), OCI_ATTR_USERNAME, errhp);
OCIAttrSet((dvoid *) usrhp, (ub4) OCI_HTYPE_SESSION, (dvoid *)"TIGER", (ub4)strlen("TIGER"), OCI_ATTR_PASSWORD, errhp);
OCISessionBegin(svchp, errhp, usrhp, OCI_CRED_RDBMS, OCI_DEFAULT);
OCIAttrSet((dvoid *) svchp, (ub4) OCI_HTYPE_SVCCTX, (dvoid *) usrhp, (ub4) 0, OCI_ATTR_SESSION, errhp);
}