vs2005连接mysql数据库初步认识

常常有用到数据库,可是还没有自己动手尝试过。哎,自己动手都是一大堆问题。直接说吧

ps:电脑配置是win64的。安装了vs05,08,10.

1.安装mysql数据库。直接百度mysql server,网上很多。

ps:安装过程中有一个vs2010 32-bit的东西没装,简单,链接打开装一个。很快的。

2.安装完后,尝试了一下,貌似还是不行?为啥呢,去百度找了一下,发现64位系统要安装32和64的ODBC都是要安装的,那就装吧


安装完后,在控制面板-》管理工具-》odbc中,找到数据源添加

(貌似装的mysql不一样,这个数据源显示会不一样,但是没关系的,都可以用)

接着就是在vs2005中的了。新建一个win32项目程序。

配置为工具-》选项,然后配置其中的包含文件库文件

在项目-》属性中加入

如果你的电脑是64位系统。那么您的计算机是64位的,而我们建立的项目使用的是win32,这个时候会出错:

 error LNK2019: 无法解析的外部符号 _mysql_real_connect@32,该符号在函数 _wmain 中被引用
 error LNK2019: 无法解析的外部符号 _mysql_init@4,该符号在函数 _wmain 中被引用
修改的方法为:如下图,点击红色方框里面的“编辑”,增加x64位,确定就行了
ps:如果没有x64这个选项,那么是你在安装中没有勾选,重新勾选安装,那么就可以显示了。


以下是代码
#include "stdafx.h"
#include <winsock2.h>
#include <windows.h>
#include <iostream>
#include <mysql.h>
//#include "include\mysql.h"
#include <stdio.h>
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
    char *host = "localhost";//数据库IP
    char *user = "root";//数据库账号
    char *pass = "123456";//数据库密码-----修改自己的密码
    char *db = "my_database";//当前数据库-----修改为自己的数据库

    //数据类型声明
    MYSQL *sock;//数据库连接指针声明
    MYSQL_RES *results;//查询结果集声明
    MYSQL_ROW record;//查询结果行声明
    sock = mysql_init(0);//初始化指针
    if (sock)
        cout << "数据库程序初始化成功!" << endl;
    else
    {
        cout << "数据库程序初始化失败!" << mysql_error(sock) << endl;
    }

    //connection
    if (mysql_real_connect(sock, host, user, pass, db, 0, NULL, 0))
        cout << "数据库连接成功!" << endl;
    else
    {
        cout << "数据库连接失败: " << mysql_error(sock) << endl;
    }
    mysql_set_character_set(sock,"gb2312");//设置当前字符为gb2312,支持中文
    //connection character set
    cout << "当前字符集为: " << mysql_character_set_name(sock) << endl;

    //执行查询
    if(mysql_query(sock,"select * from my_table"))
    {
        cout<<"查询执行成功!"<<endl;                           
    }
    results=mysql_store_result(sock);
    printf("aid\t id\t first\tsec\n");
    while(record = mysql_fetch_row(results))
    {
        printf("%s\t%s\t%s\t%s\n",record[0],record[1],record[2],record[3]);
    }
    mysql_free_result(results);//释放结果

    //关闭连接
    mysql_close(sock);
getchar();
    return EXIT_SUCCESS;
    return 0;
}


最后如果编辑报错,显示找不到”mysql.h“

那么换一种方式  用#include "include\mysql.h"的方式

把到mysql的windows安装包下面找到include文件夹,把此文件夹复制到新建的项目文件下  ,把mysql安装目录下的lib文件夹内的libmysql.lib和libmysql.dll两个文件也复制到新建的项目下面。然后把其他库文件会报错的都选择当前文件目录下的,就能成功了。


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值