您现在的位置: 捷凌网安 >> 服务器 >> 数 据 库 >> MYSQL >> 正文
MYSQL客户机程序3—产生连接代码模块

作者:佚名 责任编辑:左决 点击数: 更新时间:2008-1-4 1:32:17

   6.4 客户机程序3—产生连接代码模块

  对于我们的第三个客户机程序,即客户机程序3,通过将它封装到函数do_connect() 和do_disconnect() 中,将使连接和断开代码更加模块化,这样可以很容易地由多个客户机程序使用。这提供一种选择,可将连接代码精确地嵌入到main() 函数中。无论如何,对在应用程序过程中套用老调的任何代码都是一个好主意。将它放在可以通过多个程序访问的函数中,而不是在每个程序中都编写一遍。如果修正这个函数中的一个错误或对这个函数作了一些改进,则可只更改一次,只要重新编译就可以使用这个函数的所有程序都被修正或利用这种改进。同样,编写一些客户机程序,以便在它们执行过程中可以若干次地连接和断开。如果将安装和卸载方法放在连接和断开的函数中,则编写这样一个客户机更加容易。封装策略如下所示:

  1) 将公用代码分离到一个独立的源文件( common.c)的包装函数中。

  2) 提供一个头文件,common.h,其中包括该公共例程的原型。

  3) 在使用公共例程的客户机源文件中包括common.h。

  4) 将公共源文件编译成目标文件。

  5) 将公共目标文件连接到您的客户机程序中。

  用这些策略,让我们构造do_connect() 和do _ disconnect( )。

  do_connect() 代替对mysql_inIT() 和mysql_real_connect() 的调用,并替换错误打印的代码。除了不传递任何连接处理程序外,您可以像mysql_real_connect() 一样调用它。do_connect() 分配并初始化这个处理程序,然后,在连接后返回一个指向它的指针。如果do_ connect() 失败,则在打印一个错误消息以后,返回NULL(那就是说,调用do_connect() 并获取返回值NULL的任何程序都可以简单地退出,而不用担心打印消息的本身)。do_ disconnect () 产生一个指向连接处理程序的指针,并调用mysql_close ()。这里是common.c 的代码:

  • 上一篇文章:

  • 下一篇文章:
  •  
    最进更新
    普通文章foxpro 更新源表05-05
    普通文章foxpro 让视图与数据源相连05-05
    普通文章foxpro 机动查询和数据输入05-05
    普通文章foxpro 多个本地数据05-05
    普通文章foxpro 维护源表05-05
    普通文章Oracle 10g Release2新功能之05-05
    普通文章将Oracle 10g内置的安全特性05-05
    普通文章ACCESS 2003 建立数据库视频05-05
    普通文章三种SQL分页法效率分析05-05
    普通文章优化MySQL数据库查询的三种方05-05
     
    推荐文章
    推荐文章教你怎样在MySQL中提高全文搜05-05
    推荐文章SQL Server中数据导入导出三05-05
    推荐文章缓冲技术提高JSP程序的性能和04-17
    推荐文章asp去除HTML标记的三个实用函04-17
    推荐文章何时使用DataGrid、DataList04-17
    推荐文章MySQL存储过程示例04-14
    推荐文章华硕搭建Exchange2007企业邮03-14
    推荐文章升级Win 2003到Windows 200803-14
    推荐文章windows Server 2003 搭建域03-14
    推荐文章服务器成为IT中心的6个理由03-11
     
    热点文章 
    普通文章SQL Server 2008分析服务概览05-01
    普通文章Dlink路由器VPN设置04-29
    推荐文章缓冲技术提高JSP程序的性能和04-17
    普通文章教你优化你的ASP程序04-17
    推荐文章asp去除HTML标记的三个实用函04-17
    普通文章ASP添加验证码的解决方法04-17
    推荐文章何时使用DataGrid、DataList04-17
    普通文章Asp.net中禁止用户多次登录04-17
    普通文章MySQL之表结构修改04-14
    推荐文章MySQL存储过程示例04-14

    | 设为首页 | 加入收藏 | 联系站长 | 广告服务 | 友情链接 | 版权申明 | 网站地图 |

    在线交流 捷凌网安主群:51649627
    Copyright 2007-2008 © 捷凌网安. All rights reserved.
    备案序号:蜀ICP备08001812号