VC++6.0 访问Mysql一完整例子

 

 

 

VC++6.0 要进行设置

工具 / 选项 / 添加目录( mysql.h )所在目录

 

#if defined(_WIN32) || defined(_WIN64)  // 为了支持 windows 平台上的编译

#include <windows.h>

#endif

#include <stdio.h>

#include <stdlib.h>

#include "mysql.h"  // 我的机器上该文件在 D:/mysql/include

 

// 定义数据库操作的宏,也可以不定义留着后面直接写进代码

#define SELECT_QUERY "select sex from employee where employee_id = %d"

 

#pragma comment(lib,"D://mysql//lib//opt//libmysql.lib")

 

 

int main(int argc, char **argv) //char **argv 相当于 char *argv[]

{

    MYSQL mysql,*sock;    // 定义数据库连接的句柄,它被用于几乎所有的 MySQL 函数

    MYSQL_RES *res;       // 查询结果集,结构类型

    MYSQL_FIELD *fd ;     // 包含字段信息的结构

    MYSQL_ROW row ;       // 存放一行查询结果的字符串数组

    char  qbuf[160];      // 存放查询 sql 语句字符串

   

    if (argc != 2) {  // 检查输入参数

        fprintf(stderr,"usage : mysql_select <userid>/n/n");

        exit(1);

    }

    mysql_init(&mysql);

    if (!(sock = mysql_real_connect(&mysql,"localhost","root","wuqx168","mydb",0,NULL,0))) {

        fprintf(stderr,"Couldn't connect to engine!/n%s/n/n",mysql_error(&mysql));

        perror("");

        exit(1);

    }

    sprintf(qbuf,SELECT_QUERY,atoi(argv[1]));

    if(mysql_query(sock,qbuf)) {

        fprintf(stderr,"Query failed (%s)/n",mysql_error(sock));

        exit(1);

    }

   

    if (!(res=mysql_store_result(sock))) {

        fprintf(stderr,"Couldn't get result from %s/n", mysql_error(sock));

        exit(1);

    }

    printf("number of fields returned: %d/n",mysql_num_fields(res));

       

    while (row = mysql_fetch_row(res)) {

        printf("Ther employee_id #%d 's sex is: %s/n", atoi(argv[1]),(((row[0]==NULL)&&(!strlen(row[0]))) ? "NULL" : row[0])) ;

        puts( "query ok !/n" ) ;

    }

    mysql_free_result(res);

    mysql_close(sock);

    exit(0);

    return 0; 

}

 

命令行运行:

C:/Documents and Settings/l/ 桌面 / 新建文件夹 (2)/Debug>mysql 200301

number of fields returned: 1

Ther userid #200301 's sex is: m

query ok !

 

查询数据库信息

C:/Documents and Settings/l>mysql -u root -p

Enter password: *******

Welcome to the MySQL monitor.  Commands end with ; or /g.

Your MySQL connection id is 1

Server version: 5.1.34-community MySQL Community Server (GPL)

 

Type 'help;' or '/h' for help. Type '/c' to clear the current input statement.  

mysql> show databases;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| base1              |

| mydb               |

| mysql              |

| proj               |

| test               |

+--------------------+

6 rows in set (0.08 sec)

 

mysql> use mydb;

Database changed

mysql> show tables;

+----------------+

| Tables_in_mydb |

+----------------+

| employee       |

| products       |

| test1          |

+----------------+

3 rows in set (0.03 sec)

 

mysql> describe employee;

+-------------+---------+------+-----+---------+-------+

| Field       | Type    | Null | Key | Default | Extra |

+-------------+---------+------+-----+---------+-------+

| employee_id | char(6) | NO   | PRI | NULL    |       |

| name        | char(8) | YES  | MUL | NULL    |       |

| sex         | char(2) | YES  |     | NULL    |       |

| birthday    | date    | YES  |     | NULL    |       |

+-------------+---------+------+-----+---------+-------+

4 rows in set (0.01 sec)

 

mysql> select *from employee;

+-------------+----------+------+------------+

| employee_id | name     | sex  | birthday   |

+-------------+----------+------+------------+

| 200301      | zhangsan | m    | 1978-05-08 |

| 200302      | lisi     | f    | 1973-03-20 |

| 200303      | wangwu   | f    | 1970-10-09 |

| 200304      | zhaoliu  | m    | 1975-01-18 |

+-------------+----------+------+------------+

4 rows in set (0.00 sec)

 

mysql>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值