• 网络学院
  • 新手学堂
  • 操作系统
  • 网络技术
  • 软件应用
  • 办公软件
  • 编程技术
  • 网站架设
  • 数据库类
  • 平面设计
  • 多媒体类
  • 游戏资讯
  • 教学论文
  • 认证考试
MySQL数据库技术(30)
广告位
  站点:
  • 首 页
  • 最新软件
  • 最新文章
  • 国内软件
  • 国外软件
  • 汉化软件
  • 源码下载
  • 字体下载
MySQL数据库技术(30)
软件发布 MySQL数据库技术(30)
网络软件 系统工具 应用软件 联络聊天 图形图像 多媒体类 行业软件 游戏娱乐 编程开发 安全相关 教育教学 数码软件
热门软件: QQ 瑞星 pplive e话通 木马克星 千千静听 office2000 五笔字根 Photoshop 视频分割
返回首页 | 文章首页 | 数据库类 | MySQL Server | MySQL数据库技术(30)

MySQL数据库技术(30)

 

添加时间: 2006-4-24 4:41:52  作者: MySQL教程  阅读次数:165   来源: http://www.d9soft.com

 

 

         

  6.2 客户机程序1—连接到服务器
    我们的第一个MySQL 客户机程序很简单:连接到服务器、断开,并退出。它本身并不是非常有用,但是必须知道如何做它,因为实际上用MySQL 数据库做任何事情都必须与服务器连接。这是一个公用的操作,开发创建连接的代码是编写每个客户机程序都将使用的代码。除此之外,这项任务带给我们一些简单开始的事情。以后,我们可以增加这个客户机来做一些更有用的事情。我们第一个客户机程序的源代码,客户机程序1,包括一个单独的文件, client.c:


    这个源文件以包括stdio.h 和mysql.h 开始。MySQL 客户机可能包括其他的头文件,但是一般来说至少有两个是最基本的。
    主机名称、用户名称、口令和数据库名称的缺省值固定在代码内部,使事情变得简单。以后,我们将参数化这些值,以便可以在选项文件或命令行中指定它们。程序的main() 函数创建和终止与服务器的连接。建立连接使用如下两个步骤:
    1) 调用mysql_init() 来获取连接处理程序。MYSQL 数据类型是一个包括连接信息的结构。这种类型的变量称为连接处理程序。当我们将NULL 传递给mysql_init() 时,它分配一个MYSQL 变量,初始化它,然后返回一个指向它的指针。
    2) 调用mysql_real_connect() 来创建与服务器的连接。mysql_real_connect() 可有任意数量的参数,例如:
    ■ 连接处理程序的指针。这不能为N U L L;它应该是由mysql_init() 返回的值。
    ■ 服务器主机。如果指定NULL 或主机“l o c a l h o s t”,则客户机连接到在本地主机使用UNIX 套接字运行的服务器上。如果指定一个主机名称或主机的IP 地址,则客户机连接到使用TCP/IP 连接命名的主机上。
    在Windows 上,除了使用TCP/IP 连接而不是用UNIX 套接字以外,这种操作是类似的(在Windows NT 上,如果主机为N U L L,则在TCP/IP 以前,先试着使用一个指定的管道来连接)。
    ■ 用户名称和口令。如果名称为N U L L,则客户机库将逻辑名称发送给服务器。如果口令为N U L L,则不发送口令。
    ■ 端口号和套接字文件。这些指定为0 或N U L L,来告知客户机库使用它的缺省值。如果不指定端口和套接字,则根据希望连接到的主机确定这些缺省值。附录F 中的mysql_real_connect() 的描述给出有关这些的详细情况。
    ■ 标志值。因为我们不使用任何特定的连接操作,因此它是0。这个参数可用的选项在附录F 中的mysql_real_connect() 的项目中讨论详细情况。要想终止这个连接,可将连接处理程序的指针传递给mysql _ close()。当将连接处理程序传递mysql_close() 来终止个连接时,由mysql_init() 自动分配的连接处理程序自动地释放。
    要想测试客户机程序1,可使用本章前面建立客户机程序时给出的指导来编译和连接,然后运行它:
    % client1
    程序连接到服务器、断开并退出。这一点都不令人兴奋,但它是一个开始。然而,它只是一个开始,因为有两个重要的缺点:
    ■ 客户机没有错误检查,所以并不真正地知道实际上它是否在工作!
    ■ 连接参数(主机名称,用户名称等)在源代码内部固定。如果允许用户通过指定选项文件或命令行中的参数来解决这个问题则更好一些。这些问题的处理都不困难。我们将在下面专门解决它们。


 

 

 

上下文章:

 

上一篇文章: MySQL数据库技术(29) 下一篇文章: MySQL数据库技术(31)

相关文章:

  • Oracle下调数据库许可价格以适应多芯CPU
  • Oracle发布免费数据库管理工具Raptor
  • 甲骨文意外泄漏数据库安全漏洞
  • Oracle认证数据库备份技巧
  • 甲骨文发布数据库新工具·启动内容管理战略

相关软件:

  • 子墨数据库同步工具 V1.0.0.0
  • Apache+Php+Mysql V1.3 绿色自动安装版
  • 腾讯QQ IP数据库 V0605 纯真版
  • 腾讯QQ IP数据库 V0420 纯真版(繁体版)
  • 火柴峰动画(1760数据库)
  • 天翼音乐美化版(三万音乐、图片数据库)

 

 

快速导航

  • 网络学院
  • 精品汇聚
  • 字体下载
  • 教程下载
  • ASP源码
  • PHP源码
  • Net源码
  • JSP 源码

数据库类分类导航

  • SQL Server
  • MySQL Server
  • DB2
  • Oracle
  • ACCESS
  • Foxpro
  • PowerBuilder
  • Sybase

本类经典文章推荐

  • 怎样在vc、delphi中使用mysql(mys...
  • MySQL数据导入与导出之二
  • 如何实现MySQL中的用户管理?
  • win 2000 安装 mysql-shareware-3...
  • Mysql字段长度
  • 如何把ACCESS的数据导入到Mysql中
  • 如何为用户设置密码(MYSQL)
  • 如何恢复MYSQL的ROOT口令
  • MySQL数据库备份
  • MYSQL初学者使用指南 上篇

MySQL Server阅读排行

  • MySQL中的SQL-- TEXT、DATE、和SE...
  • MYSQL初学者使用指南 上篇
  • 怎样在vc、delphi中使用mysql(mys...
  • MySQL数据导入与导出之二
  • MYSQL初学者使用指南 下篇
  • 如何把ACCESS的数据导入到Mysql中
  • 如何为用户设置密码(MYSQL)
  • Mysql字段长度
  • MySQL数据库技术(01)
  • MySQL数据库技术(19)

数据库类阅读总排行

  • MySQL中的SQL-- TEXT、DATE、和SE...
  • MYSQL初学者使用指南 上篇
  • 怎样在vc、delphi中使用mysql(mys...
  • MySQL数据导入与导出之二
  • SQL Server数据库技术(96)
  • MYSQL初学者使用指南 下篇
  • SQL Server数据库技术(98)
  • SQL Server数据库技术(60)
  • 精通数据库系列之入门-基础篇
  • 如何把ACCESS的数据导入到Mysql中

广告位置

字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 回到顶部

关于我们 | 版权声明 | 免责条款 | 广告联系 | 软件发布 | 下载帮助 | 下载排行 | 网站地图 | 特别鸣谢 | 友情连接

copyright; 2005-2008 D9soft.com 第九软件网 版权所有