论文天下|会计论文|管理论文|计算机论文|医药学论文|经济学论文|法学论文|社会学论文|文学论文|教育论文|理科论文|工科论文|艺术论文|哲学论文|文化论文|外语论文|格式论文
论文天下
计算机应用论文  计算机理论论文  计算机网络论文  电子商务论文  软件工程论文  操作系统论文  通信技术论文   
Visual C++中的开放数据库连接技术

摘 要 DB(pen DataBase nnetivity,开放数据库连接)提供了一组应用程序调用接口和一套运行支持环境,应用程序可以使用标准的函数进行数据库操作,而不必关心数据源来自于何种数据库管理系统(DBS),只要有相应的驱动程序即可。本文介绍了DB的运行机制,着重讨论了Visual ++ 1.5下应用F进行DB编程的方法。 则该调用会自动出现一个对话框列出所有可用的数据源(名),让用户选择。bExlusive:只支持“假”(False)值,表示为共享(share)方式连接。因此,应用程序在运行前,一定要装入share.exe或在inds的syste.ini中装入vshare.386。 Readnly:指明数据源操作方式是“只读”还是可以修改。lpsznnet: 指明连接字符串,包括数据源名、用户标识码、口令等信息。该字符串必须以“DB;”开头,表示该连接是与一个DB数据源的连接(考虑以后版本支持非DB数据源)。
-db打开后,其指针可以传给-reset作为其数据源。-db关闭后,将关闭所有Rerdset对它的连接,-db也可以重新打开。
2.-db操作数据
数据源打开后,即可对数据库文件中的数据表格进行操作,操作以调用SQL语句方式进行,可直接通过DB API函数,或者Database类成员函数ExeuteSQL。数据表名在SQL语句中指定,如下语句则在所在的数据源中的lerk表中插入一个记录,记录的nae字段值为"hen"。
-db.ExeuteSQL("insert int lerk(nae) value('hen')");3.-reset连接数据-reset在构造时,可传入一个Database对象指针,作为-reset的数据源,当为NULL时,必须重载Rerdset的函数GetDefaultnnet,以提供数据源连接字符串(相当于-db.pen中的lpsznnet)。如下则表示连接名为PANY的数据源(当传入了合法的Database对象指针时,该函数将不被调用)。
String Userset::GetDefaultnnet()
{
return"DB;DSN=PANY;";
}4.-reset选取记录和字段
-reset在调用打开函数时,即获得了符合条件的一组记录,条件语句在pen函数中的lpszSQL中给出,如果lpszSQL为NULL,则必须重载Rerdset的函数以提供该语句。该语句是一个SELET语句,带或不带here和rder by子句(如果不带,here和rder by的条件也可在Rerdset的两个预定义成员变量-strFilter和-strSrt中给出)。lpszSQL也可以只是一个数据表名(table-nae),也可以是对内嵌在数据库文件中的查询程序的调用语句。所选择的一系列字段名,在成员函数DFieldExhange中由一系列RFX-函数指定。RFX-(Rerd Field Exhange)函数,使字段和成员变量一一建立类型对应关系。另外,-strFilter中也可以带变量参数(用"?"表示,如"fieldl>=? AND field2<=?"),参数与成员变量的对应关系也在DFieldExhange中由RFX-函数指定(串中的"?"将被参数变量值逐一替换)。
vid Userset::DFieldExhange(FieldExhange* pFX)
{
pFX->SetFieldType(FieldExhange::utputlun);
/*以下为字段连接 */
RFX-???(pFX,"field1",-var1);
RFX-???(pFX,"field2",-var2);
...
RFX-???(pFX,"fieldn",-varn);
pFX->SetFieldType(FieldExhange::para);
/*以下为参数连接*/
RFX-???(pFX,field1,-para1);
RFX-???(pFX,field2,-para2);
...
}其中,???为DB SQL数据类型名,如RFX-Duble,RFX-Text等。
综合上述,选取记录和字段实际是由下列语句完成:
SELET rfx-field-list FR table-nae[HERE -strFilter][RDER BY -strSrt]
字段变量和参数变量的个数一定要在调用打开函数前(如构造函数中)准确地赋值给成员变量-nFields和-nParas。-reset在打开后的任何时候调用Requery()函数,将根据新的查询条件(例如修改了参数变量值)重新选取记录。
5.-reset操作数据
记录集合生成后,其当前记录的各字段值被保存在前述的各字段变量中,如果调用Rerdset的滚动(srll)函数,如veFirst(),veNext(),vePrev(),veLast()等,字段变量的值将自动跟随“当前”记录的位置的变化而变化。IsBF(),IsEF()用于判别是否移动到记录的头或尾。

未完...点击下方链接下载完整文档

Visual C++中的开放数据库连接技术

摘 要 DB(pen DataBase nnetivity,开放数据库连接)提供了一组 应用 程序调用接口和一套运行支持环境,应用程序可以使用标准的函数进行数据库操作,而不必关心数据源来自于何种数据库管理系统(DBS),只要有相应的驱动程序即可。本文介绍了DB的运行机制,着重讨论
  • 上一篇:超市事务数据库挖掘关联规则的设计
  • 下一篇:基于vc与word、outlook对象模型的email实现
  • 基于GP算法的知识发现系统
    渐开线圆柱齿轮几何参数计算的计
    光纤光缆和通信电缆技术发展与思
    浅谈行为引导教学方法在《计算机
    青年教师在医学微生物学留学生教
    企业电子商务系统的规划与设计研
    有关计算机软件数据接口的应用研
    浅谈对程序开发中异常的理解和认
    大芯数OPGW在浙江电网的应用
    研究生阶段计算机网络理论课程教
    刍议防火墙的合理使用(1)
    浅谈Intranet在现代企业中的应用
    电子政务人员培训的问题与建议(1
    基于人工智能的银行信贷风险决策
    面向对象数据库理论设想
    浅析人工智能在中小学信息技术
    浅谈电气自动化控制中的人工智
    游戏人工智能的未来
    关于人工智能技术在电气自动化
    AI人工智能工业调节器在水位控
    计算机在人工智能中的应用研究
    人工智能在电气传动控制中的应
    《人工智能仿真软件》在汽车电
    人工智能控制技术在电气传动中
    人工智能方法在信号处理中的应
    | 设为首页 | 加入收藏 | 联系我们 | 论文发表

    Copyright 2006-2020 © 论文天下 All rights reserved 本站所有内容均由SPider自动索引,如有侵权请联系QQ:2486851删除