步骤/方法
一、首先安装mysql:我这里用的版本是mysql-5.0.27-win32.msi,vc6只支持32位的MySQL
二、VC6.0的设置
1. 打开VC6.0 工具栏Tools菜单下的Options选项,在Directories的标签页中右边的“Show directories for:”下拉列表中选中“Includefiles”,然后在中间列表框中添加你本地安装MySQL的include目录路径。(我的是D:\Program Files\MySQL\MySQL Server 5.0\include)。
2. 在上面说到的“Show directories for:”下拉列表中选中“Library files”,然后添加你本地安装MySQL的Lib目录路径。Lib目录下还有debug和opt两个目录,建议选debug。(我的是D:\Program Files\MySQL\MySQL Server 5.0\lib\debug)。
3. 在“Project settings->Link:Object/library modules”里面添加“libmysql.lib”。
4. 在你要连接数据库的文件里加入#include “winsock.h”和#include “mysql.h”两个文件。
[注]MySQL安装完后,文件夹中可能没有include和lib文件夹。这是因为默认不安装这两个文件夹。解决办法:再次运行安装程序,选择Modify选项,然后选择最后一项开发工具安装,确认即可。
三、数据库、表的创建
打开“开始->所有程序->MySQL->MySQL Server 5.0->MySQL Command Line Client.exe”,如果没有设置密码就直接按回车,会提示服务器启动成功。
mysql> SHOW DATABASES; //显示所有的数据库,注意一定要 敲“;”后再按回车
mysql> CREATE DATABASE mydb;//创建数据库mydb
mysql> USE mydb; //选择你所创建的数据库mydb
mysql> SHOW TABLES; //显示数据库中的表
mysql> CREATE TABLE mytable (username VARCHAR(50), password VARCHAR(200)); //创建一个表mytable: 用户名;密码
mysql> DESCRIBE mytable; //显示表的结构
四、VC编程
MYSQL mysql; //数据库连接句柄
mysql_init(&mysql);
if(!mysql_real_connect(&mysql,"localhost","root","dxd","mydb",3306,NULL,0))
{ //mydb为你所创建的数据库,3306为端口号,root是用户名,dxd是密码
AfxMessageBox("数据库连接失败");
return FALSE;
}
常用的数据库操作
// 数据库的句柄
MYSQL m_sqlCon;
// 查询结果集的声明
MYSQL_RES *m_res;
// 查询结果行声明
MYSQL_ROW row;
//定义sql语句
const char *sql = "select * from table";
//执行查询
m_res = mysql_store_result(&m_sqlCon);
//如果为空则返回
if(NULL == m_res) return;
//重复读取行,把数据放入列表中,直到row为NULL
while(row = mysql_fetch_row(m_res))
{
for (int rols = 0; rols < 2; rols++)
{
CString myreaddata(row[rols]);
list.AddString(myreaddata);
}
}
//执行插入
const char *sql = "insert into tb_rdchange(way_id,sp_way_id) values(4,4)";
if(mysql_real_query(&m_sqlCon, sql,(unsigned long)strlen(sql)))
{
return;
}
五. 最后附上用MFC做一个图书管理系统时遇到的坑:
classview视图中有某些类消失看不见了。
解决办法:
在对应的.h文件中,把class关键字去掉后编译,出错后,重新添加class关键字,再次编译,该类就会在classview视图中重新出现CString类型的字符串判断长度是否为0,调试时发现,发现不能用if(!str.getLength()),而是用if(str.getLength()==0)
组合框不能正常弹出。原因可能是,放入的时候向下拖放的范围太小。
解决方法:
如果想调整组合框的下拉列表部分的范围,方法是对话框资源处于编辑状态时,鼠标移动到右侧向下的箭头上,这时候会发现光标变成了一个上下的箭头,单击鼠标左键,然后将光标移动到组合框下方的蓝色的小方块上,并当光标变成双向箭头的形状时,按下鼠标左键并且向下拖动,直至拖到适合的范围。