当前位置:首页 > 信息技术 > 数据库系统 > MySql > VC++6.0连接MySQL(一)

VC++6.0连接MySQL(一)

1、【File】–>【New】–>【Project】–>【MFC AppWizard(exe)】;

2、【Project name】:test;点击【OK】,此处的工程名不能命名为Mysql,不然程序会报错!

3、Step 1 选:【Dialog based】,点击【Finish】完成。

二、mysql文件加入环境:

1、【Tools】–>【Options】–>【Directories】,Show directories for,Include files:C:PROGRAM FILESMYSQLMYSQL SERVER 5.1INCLUDE;

2、【Tools】–>【Options】–>【Directories】,Show directories for,Library files:C:PROGRAM FILESMYSQLMYSQL SERVER 5.1LIBDEBUG;

3、【Project】–>【Settings】–>【Link】,Object/library modules:libmySQL.lib。

三、实现代码:

1、【FileView】–>【Header Files】–>【StdAfx.h】加入如下代码:

#include <winsock.h>
#include “mysql.h”

2、【FileView】–>【Header Files】–>【testDlg.h】在//{{AFX_MSG(CTDlg) …//}}AFX_MSG之间加入如下代码:

afx_msg void Connect();

3、打开【FileView】–>【Header Files】–>【testDlg.cpp】文件:

(1)、在OnInitDialog()中的return TRUE前面加入:Connect();

(2)、在testDlg.cpp最后加入如下代码:

void CTestDlg::Connect()
{
char *host = “localhost”;
char *user = “root”;
char *pass = “test”;
char *db = “test”;

MYSQL *sock;
MYSQL_RES *results;
MYSQL_ROW record;
sock = mysql_init(0);

if (!sock)
AfxMessageBox(“sock handle failed!”);

//connection
if (!mysql_real_connect(sock, host, user, pass, db, 0, NULL, 0))
AfxMessageBox(“connection fail: “);

mysql_set_character_set(sock,”utf8″);

if(mysql_query(sock,”select * from user”))
{
AfxMessageBox(“very good!”);
}
results=mysql_store_result(sock);
printf(“主机t用户名n”);
while(record = mysql_fetch_row(results))
{
AfxMessageBox(record[1]);
}
mysql_free_result(results);

//closing connection
mysql_close(sock);
}

4、编译执行,是不是连接成功啦?

 

VC++6.0连接MySQL(一):等您坐沙发呢!

发表评论

表情
还能输入210个字