




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
这里附上例程供大家参考学习: /* odbc.c testing unixODBC */ #include #include #include #include #include SQLHENV V_OD_Env; / Handle ODBC environment long V_OD_erg; / result of functions SQLHDBC V_OD_hdbc; / Handle connection char V_OD_stat10; / Status SQL SQLINTEGER V_OD_err,V_OD_rowanz,V_OD_id; SQLSMALLINT V_OD_mlen,V_OD_colanz; char V_OD_msg200,V_OD_buffer200; int main(int argc,char *argv) / 1. allocate Environment handle and register version V_OD_erg=SQLAllocHandle(SQL_HANDLE_ENV,SQL_NULL_HANDLE,&V_OD_Env) ; if (V_OD_erg != SQL_SUCCESS) & (V_OD_erg != SQL_SUCCESS_WITH_INFO) printf(Error AllocHandlen); exit(0); V_OD_erg=SQLSetEnvAttr(V_OD_Env, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3, 0); if (V_OD_erg != SQL_SUCCESS) & (V_OD_erg != SQL_SUCCESS_WITH_INFO) printf(Error SetEnvn); SQLFreeHandle(SQL_HANDLE_ENV, V_OD_Env); exit(0); / 2. allocate connection handle, set timeout V_OD_erg = SQLAllocHandle(SQL_HANDLE_DBC, V_OD_Env, &V_OD_hdbc); if (V_OD_erg != SQL_SUCCESS) & (V_OD_erg != SQL_SUCCESS_WITH_INFO) printf(Error AllocHDB %dn,V_OD_erg); SQLFreeHandle(SQL_HANDLE_ENV, V_OD_Env); exit(0); SQLSetConnectAttr(V_OD_hdbc, SQL_LOGIN_TIMEOUT, (SQLPOINTER *)5, 0); / 3. Connect to the datasource web V_OD_erg = SQLConnect(V_OD_hdbc, (SQLCHAR*) Test, SQL_NTS, (SQLCHAR*) root, SQL_NTS, (SQLCHAR*) , SQL_NTS); if (V_OD_erg != SQL_SUCCESS) & (V_OD_erg != SQL_SUCCESS_WITH_INFO) printf(Error SQLConnect %dn,V_OD_erg); SQLGetDiagRec(SQL_HANDLE_DBC, V_OD_hdbc,1, V_OD_stat, &V_OD_err,V_OD_msg,100,&V_OD_mlen); printf(%s (%d)n,V_OD_msg,V_OD_err); SQLFreeHandle(SQL_HANDLE_ENV, V_OD_Env); exit(0); printf(Connected !n); V_OD_erg=SQLAllocHandle(SQL_HANDLE_STMT, V_OD_hdbc, &V_OD_hstmt); if (V_OD_erg != SQL_SUCCESS) & (V_OD_erg != SQL_SUCCESS_WITH_INFO) printf(Fehler im AllocStatement %dn,V_OD_erg); SQLGetDiagRec(SQL_HANDLE_DBC, V_OD_hdbc,1, V_OD_stat,&V_OD_err,V_OD_msg,100,&V_OD_mlen); printf(%s (%d)n,V_OD_msg,V_OD_err); SQLFreeHandle(SQL_HANDLE_ENV, V_OD_Env); exit(0); SQLBindCol(V_OD_hstmt,1,SQL_C_CHAR, &V_OD_buffer,150,&V_OD_err); SQLBindCol(V_OD_hstmt,2,SQL_C_ULONG,&V_OD_id,150,&V_OD_err); V_OD_erg=SQLExecDirect(V_OD_hstmt,SELECT dtname,iduser FROM web order by iduser,SQL_NTS); if (V_OD_erg != SQL_SUCCESS) & (V_OD_erg != SQL_SUCCESS_WITH_INFO) printf(Error in Select %dn,V_OD_erg); SQLGetDiagRec(SQL_HANDLE_DBC, V_OD_hdbc,1, V_OD_stat,&V_OD_err,V_OD_msg,100,&V_OD_mlen); printf(%s (%d)n,V_OD_msg,V_OD_err); SQLFreeHandle(SQL_HANDLE_STMT,V_OD_hstmt); SQLFreeHandle(SQL_HANDLE_DBC,V_OD_hdbc); SQLFreeHandle(SQL_HANDLE_ENV, V_OD_Env); exit(0); V_OD_erg=SQLNumResultCols(V_OD_hstmt,&V_OD_colanz); if (V_OD_erg != SQL_SUCCESS) & (V_OD_erg != SQL_SUCCESS_WITH_INFO) SQLFreeHandle(SQL_HANDLE_STMT,V_OD_hstmt); SQLDisconnect(V_OD_hdbc); SQLFreeHandle(SQL_HANDLE_DBC,V_OD_hdbc); SQLFreeHandle(SQL_HANDLE_ENV, V_OD_Env); exit(0); printf(Number of Columns %dn,V_OD_colanz); V_OD_erg=SQLRowCount(V_OD_hstmt,&V_OD_rowanz); if (V_OD_erg != SQL_SUCCESS) & (V_OD_erg != SQL_SUCCESS_WITH_INFO) printf(Number of RowCount %dn,V_OD_erg); SQLFreeHandle(SQL_HANDLE_STMT,V_OD_hstmt); SQLDisconnect(V_OD_hdbc); SQLFreeHandle(SQL_HANDLE_DBC,V_OD_hdbc); SQLFreeHandle(SQL_HANDLE_ENV, V_OD_Env); exit(0); printf(Number of Rows %dn,V_OD_rowanz); V_OD_erg=SQLFetch(V_OD_hstmt); while(V_OD_erg != SQL_NO_DATA) printf(Result: %d %sn,V_OD_id,V_OD_buffer); V_OD_erg=SQLFetch(V_OD_hstmt); ; SQLFreeHandle(SQL_HANDLE_STMT,V_OD_hstmt); SQLDisconnect(V_OD_hdbc); SQLFreeHandle(SQL_HANDLE_DBC,V_OD_hdbc); SQLFreeHandle(SQL_HANDLE_ENV, V_OD_Env); return(0); 2QT下进行 ODBC编程 QT 3.0提供了 Data Table、Data Browser和 Data View三个与数据库相关的控件。你可以在 QT的 Project设置你要连接的数据库, Driver一栏中选择 QODBC3即可,其它选项你一看就明白了。上述的三个数据库控件的使用方法可以参见 QT中相应文档,也很好使用的。参考资料:微软的 ODBC主页:http:/www.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年气体检测监控系统项目发展计划
- 数字工具在传统课堂中的应用与效果分析
- 智能教育机器人在家庭教育的应用前景
- 教育心理学实践激励学生的关键要素
- 教育公平政策与资源分配的实践
- 学生自我效能感的培养教育心理学的秘密武器
- 教育技术的成功案例与实践经验分享
- 商业综合体工程监理案例分析
- 能源革新引领教育升级探索智能教育设施的新模式
- 商业行业如何推动青少年健康饮食政策的落实
- 异口同音公开课
- 专利代理人资格考试实务试题及参考答案
- 运用信息技术助力劳动教育创新发展 论文
- GB/T 602-2002化学试剂杂质测定用标准溶液的制备
- GB/T 4074.8-2009绕组线试验方法第8部分:测定漆包绕组线温度指数的试验方法快速法
- 2023年涉县水库投资管理运营有限公司招聘笔试模拟试题及答案解析
- 新版有创血压监测ABP培训课件
- 重症医学科常用知情告知书
- 二等水准测量记录表
- 母线槽安装检验批质量验收记录
- 企业员工上下班交通安全培训(简详共2份)
评论
0/150
提交评论