常用OCI函数使用说明(3)
swResult = OCIAttrSet(usrhp, OCI_HTYPE_SESSION, (text*) passwd,
strlen(passwd),
OCI_ATTR_PASSWORD, errhp);
if(swResult != OCI_SUCCESS && swResult != OCI_SUCCESS_WITH_INFO) return FALSE;
sword OCIAttrGet(
dvoid *trgthndlp, //需读取的句柄名 ub4 trghndltyp, //句柄类型
dvoid *attributep, //读取的属性名 ub4 *sizep, //属性值长度
ub4 attrtype, //属性类型 OCIError *errhp //错误句柄 )
4.连接/断开服务器 多用户方式连接: sword OCIServerAttach(
OCIServer *srvhp,//未初始化的服务器句柄 OCIError *errhp,
CONST text *dblink,//服务器SID sb4 dblink_len,
ub4 mode //=OCI_DEFAULT,系统环境将设
为阻塞方式 );
sword OCIServerDetach ( OCIServer *srvhp,
OCIError *errhp,
ub4 mode //OCI_DEFAULT );
单用户方式连接: sword OCILogon (
OCIEnv *envhp,
OCIError *errhp, OCISvcCtx **svchp, CONST text *username,
ub4 uname_len, CONST text *password, ub4 passwd_len, CONST text *dbname, ub4 dbname_len );
sword OCILogoff (
OCISvcCtx *svchp
OCIError *errhp );
5.开始/结束一个会话
先认证用户再建立一个会话连接 sword OCISessionBegin (
OCISvcCtx *svchp, //服务环境句柄
OCIError *errhp,
OCISession *usrhp, //用户会话句柄
ub4 credt, //认证类型 ub4 mode //操作模式 );
*认证类型:
OCI_CRED_RDBMS:用数据库用户名和密码进行认证,则先要设置
OCI_ATTR_USERNAME和OCI_ATTR_PASSWORD属性 OCI_CRED_EXT:外部认证,不需要设置用户和密码
OCI_DEFAULT:用户会话环境只能被指定的服务器环境句柄所设置 OCI_SYSDBA:用户要具有sysdba权限 OCI_SYSOPER:用户要具有sysoper权限 Eg:
swResult = OCISessionBegin(svchp, errh,usrhp, OCI_CRED_RDBMS,
OCI_DEFAULT);
if(swResult != OCI_SUCCESS && swResult != OCI_SUCCESS_WITH_INFO) return FALSE;
sword OCISessionEnd ( OCISvcCtx *svchp,
OCIError *errhp, OCISession *usrhp,
ub4 mode );
6.读取错误信息 sword OCIErrorGet (
dvoid *hndlp, //错误句柄
ub4 recordno,//从那里读取错误记录,从1开始 text *sqlstate,//已取消,=NULL sb4 *errcodep, //错误号 text *bufp, //错误内容 ub4 bufsiz, //bufp长度
ub4 type //传递的错误句柄类型 =OCI_HTYPE_ERROR:错误句柄 =OCI_HTYPE_ENV:环境句柄 ); eg:
ub4 ub4RecordNo = 1; OCIError* hError
sb4 sb4ErrorCode; char sErrorMsg[1024];
if (OCIErrorGet(hError, ub4RecordNo++, NULL, &sb4ErrorCode,
(OraText*) sErrorMsg, sizeof(sErrorMsg), OCI_HTYPE_ERROR) ==
OCI_SUCCESS)
printf(“error msg:%s\\n”, sErrorMsg);
7.准备SQL语句
sword OCIStmtPrepare (
OCIStmt *stmtp,//语句句柄
OCIError *errhp,
CONST text *stmt, //SQL语句
ub4 stmt_len, //语句长度
ub4 language, //语句的语法格式
=OCI_NTV_SYNTAX
ub4 mode //=OCI_DEFAULT ); eg:
char sSQL[1024];
sprintf(sSQL, “select table_name from user_tables”);
…… 此处隐藏:137字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [高等教育]公司协助某村精准扶贫工作总结.doc
- [高等教育]高二生物知识点总结(全)
- [高等教育]苏教版数学三年级下册《解决问题的策略
- [高等教育]仪器分析课程学习心得
- [高等教育]2017年五邑大学数学与计算科学学院333
- [高等教育]人教版七年级下册语文第四单元测试题(
- [高等教育]2018年秋七年级英语上册Unit7Howmuchar
- [高等教育]2017年八年级下数学教学工作小结
- [高等教育]湖南省怀化市2019届高三统一模拟考试(
- [高等教育]四年级下册科学_基础训练及答案教材
- [高等教育]城郊煤矿西风井管路伸缩器更换施工安全
- [高等教育]昆八中20182019学年度上学期期末考试
- [高等教育]项目部各类人员任命书
- [高等教育]上市公司经营水务产业的模式
- [高等教育]人教版高二化学第一学期第三章水溶液中
- [高等教育]【中考物理第一轮复习资料】四.压强与
- [高等教育]金坑水电站报废改建工程机电设备更新改
- [高等教育]高中生物教学工作计划简易版
- [高等教育]2017年西华大学攀枝花学院(联合办学)44
- [高等教育]最新整理超短爆笑英文小笑话大全
- 优秀教师继续教育学习心得体会
- 阳历到阴历的转换
- 留守儿童教育案例分析
- 华师17春秋学期《玩教具制作与环境布置
- 测速传感器新型安装装置的现场应用
- 人教版小学数学三年级下册第四单元
- 创业个人意向书
- 山东省潍坊市2012年高考仿真试题(三)
- [恒心][好卷速递]四川省成都外国语学校
- 多少人错把好转反应当成了病情加重处理
- 中外广播电视史复习资料整理
- 江苏省扬州市江都区宜陵镇中学2014-201
- 工程造价专业毕业实习报告
- 广西师范学院心理与教育统计
- aympkrq基于 - asp的博客网站设计与开
- 建筑业外出经营相关流程操作(营改增后
- 人治 德治 法治
- [精华篇]常识判断专项训练题库
- 中国共产党为什么要实行民主集中
- 小学数学第三册第一单元试卷(A、B、C




