手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>程序设计>C/C++>列表

在C 中的ODBC API数据库编程

来源:互联网 作者:west263.com 时间:2008-02-23
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

一、动态加载数据源
1、通过修改注册表加载数据源:
·用户数据源:HKEY_CURRENT_USERSOFTWAREODBCODBC.INI
·系统数据源:HKEY_LOCAL_MACHINESOFTWAREODBCODBC.INI
对于不同类型的数据源,注册表的修改也不同,但基本上要修改两个地方,一个是在ODBC.INI子键下建立一个和数据源描述名同名的子键,并在该子键下建立和数据源配置相关的项;另一个是在\ODBC.INIODBC Data Sources子键下建立一个新项以便告诉驱动程式管理器ODBC数据源的类型。
2、通过ODBC API加载:Windows系统子目录下的动态链接库Odbcinst.dll提供了一个能够动态增加、修改和删除数据源的函数SQLConfigDataSource,由于VC的默认库文档中不包含此函数,因此使用前需将Odbcinst.h文档包含在工程的头文档中,在工程的setting属性框Link页的Object/library module编辑框中增加Odbc32.lib,同时确保系统目录system32下有文档Odbccp32.dll
3、文档数据源的连接:除了ODBC管理器,还能够通过SQLDriverConnect来添加文档数据源。
二、ODBC API编程
假如一个ODBC API函数执行成功,则返回SQL_SUCCESSSQL_SUCCESS_WITH_INFOSQL_SUCCESS指示可通过诊断记录获取有关操作的周详信息,SQL_SUCCESS_WITH_INFO指示应用程式执行结果带有警告信息,可通过诊断记录获取周详信息。假如函数调用失败,返回码为SQL_ERROR
一般,编写ODBC程式主要有一下几个步骤:
1、 分配环境句柄:声明一个SQLHENV的变量,调用函数SQLAllocHandle
配置环境属性:完成环境分配后,用函数SQLSetEnvAttr配置环境属性,注册ODBC版本号。
释放环境句柄:完成数据访问任务时,应调用SQLFreeHandle释放前面分配的环境。
2、 分配连接句柄:声明一个SQLHDBC类型的变量,调用SQLAllocHandle函数分配句柄。
配置连接属性:任何连接属性都可通过函数SQLSetConnectAttr配置,调用函数SQLGetConnectAttr可获取这些连接属性的当前配置值。
3、 连接数据源:对于不同的程式和用户接口,能够用不同的函数建立连接
SQLConnect:该函数只要提供数据源名称、用户ID和口令,就能够进行连接了。
SQLDriverConnect:该函数用一个连接字符串建立至数据源的连接,他能够让用户输入必要的连接信息,使用系统中还没定义的数据源。
SQLBrowseConnect:该函数支持以一种迭代的方式获取到数据源的连接,直到最后建立连接,他基于客户机/服务器体系结构,因此本地数据库不支持该函数。
4、 准备并执行SQL语句
A、 分配语句句柄:语句句柄是通过调用SQLAllocHandle函数分配的。
函数SQLGetStmrrAttrSQLSetStmrrAttr用来获取和配置一个语句句柄的选项,使用完,调用SQLFreeHandle释放该句柄。
B、 执行SQL语句
SQLExecDirect:该函数直接执行SQL语句,对于只执行一次的SQL语句来说,该函数是执行最快的方法。
SQLPrepareSQLExecute:对于需要多次执行的SQL语句来说,可先调用SQLPrepare准备SQL语句的执行,用SQLExecute执行准备好的语句。
C、 使用参数:使用参数能够使一条SQL语句多次执行,得到不同的结果。
函数SQLBindParameter负责为参数定义变量,将一段SQL语句中的一个参数标识符("?")捆绑在一起,实现参数值的传递。
5 获取记录集
A 绑定列:首先必须分配和记录集中字段相对应的变量,然后通过函数SQLBindCol将记录字段同程式变量绑定在一起,对于长记录字段,能够通过调用函数SQLGetData直接取回数据。
绑定字段能够根据自己的需要全部绑定,也能够绑定其中的某几个字段。
通过调用函数SQLBindCol将变量地址值赋为NULL,能够结束对一个记录字段的绑定,通过调用函数SQLFreeStmt,将其中选项设为




文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

热点关注
IDC资讯 虚拟主机 域名注册 托管租用 vps主机 智能建站
网站运营 建站经验 策划盈利 搜索优化 网站推广 免费资源
网站联盟 联盟新闻 联盟介绍 联盟点评 网赚技巧
行业资讯 业界动态 搜索引擎 网络游戏 门户动态 电子商务 广告传媒
网络编程 Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术 Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷 Internet Explorer
网页制作 FrontPages Dreamweaver Javascript css photoshop fireworks Flash
程序设计 Java技术 C/C++ VB delphi
网络知识 网络协议 网络安全 网络管理 组网方案 Cisco技术
操作系统 Win2000 WinXP Win2003 Mac OS Linux FreeBSD
返回首页 |关于我们 | 联系我们 | 付款方式 | 创业联盟 | 价格总览 | 资讯中心 | 友情链接 | 网站地图 | 招贤纳士 | RSS