重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
前提需要先安装mysql,安装目录下有mysql提供的库文件:
创新互联成立于2013年,先为白云等服务建站,白云等地企业,进行企业商务咨询服务。为白云企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
vc6设置:
打开vc6--选择Tools(工具)--Options(选项)--Directories(文件夹)
Include 包含mysql的Include 目录;
Library 包含mysql的Lib文件 目录
或者你把这个libmysql.lib直接拷到你VC系统库目录下也可以
c++不支持MySQL连接,所以
常见的有两种方法
1。 ODBC连接mysql。安装mysql后,再安装个mysql connection,你百度搜一下。 然后odbc创建mysql连接。
2. mysql自带的函数库
首先你知道MFC程序的架构吗?如果你不知道的话,那和你说了怎么把MYSQL数据库的调用函数加到MFC中去你也看不懂啊。用CONSOLE方式调用MYSQL和在MFC中调用MYSQL数据库没有本质的区别,都是通过API接口来调用,你只需要把MYSQL下面的头文件(MYSql的include目录下)拷贝到你的工程中,然后在你的工程中#include "mysql.h" 这个头文件就可以了。在你的代码中只需要在你需要的时候调用相关的API函数即可。 另外需要注意的是,你需要把libmysql.lib链接库链接到你的程序中,简单的说,在你的调用的地方(.cpp)文件的开头中加入如下语句:#include "stdafx.h"#include ..... #pragma comment(lib, "libmysql.lib") // 这样引入libmysql.dll libmysql.lib和libmysql.dll都在mysql的安装目录下。
//vc工具中添加E:\WAMP\BIN\MYSQL\MYSQL5.5.8\LIB 路径
//在工程设置-》链接》库模块中添加 libmysql.lib
#include stdio.h
#include time.h
#include string.h
#include winsock.h
#include "E:\wamp\bin\mysql\mysql5.5.8\include\mysql.h"
void main(){
MYSQL *conn;
MYSQL_RES *res;
MYSQL_ROW row;
char *server ="localhost";
char *user ="root";
char *password="";
char *database="test";
char sql[1024]="select * from chinaren";
conn=mysql_init(NULL);
if(!mysql_real_connect(conn,server,user,password,database,0,NULL,0)){
fprintf(stderr,"%s\n",mysql_error(conn));
exit(1);
}
if(mysql_query(conn,sql)){
fprintf(stderr,"%s\n",mysql_error(conn));
exit(1);
}
res=mysql_use_result(conn);
while((row = mysql_fetch_row(res))!=NULL){
printf("%s\n",row[2]);
}
mysql_free_result(res);
mysql_close(conn);
}
===============================
#if defined(_WIN32) || defined(_WIN64) //为了支持windows平台上的编译
#include windows.h
#endif
#include stdio.h
#include stdlib.h
#include "mysql.h"
//定义数据库操作的宏,也可以不定义留着后面直接写进代码
#define SELECT_QUERY "show tables;"
int main(int argc, char **argv) //char **argv 相当于 char *argv[]
{
MYSQL mysql,*handle; //定义数据库连接的句柄,它被用于几乎所有的MySQL函数
MYSQL_RES *result; //查询结果集,结构类型
MYSQL_FIELD *field ; //包含字段信息的结构
MYSQL_ROW row ; //存放一行查询结果的字符串数组
char querysql[160]; //存放查询sql语句字符串
//初始化
mysql_init(mysql);
//连接数据库
if (!(handle = mysql_real_connect(mysql,"localhost","user","pwd","dbname",0,NULL,0))) {
fprintf(stderr,"Couldn't connect to engine!\n%s\n\n",mysql_error(mysql));
}
sprintf(querysql,SELECT_QUERY,atoi(argv[1]));
//查询数据库
if(mysql_query(handle,querysql)) {
fprintf(stderr,"Query failed (%s)\n",mysql_error(handle));
}
//存储结果集
if (!(result=mysql_store_result(handle))) {
fprintf(stderr,"Couldn't get result from %s\n", mysql_error(handle));
}
printf("number of fields returned: %d\n",mysql_num_fields(result));
//读取结果集的内容
while (row = mysql_fetch_row(result)) {
printf("table: %s\n",(((row[0]==NULL)(!strlen(row[0]))) ? "NULL" : row[0]) ) ;
}
//释放结果集
mysql_free_result(result);
//关闭数据库连接
mysql_close(handle);
system("PAUSE");
//为了兼容大部分的编译器加入此行
return 0;
}
mysql是有c语言接口的,安装相应库后就可以链接了,一般连接mysql的函数是mysql_connect或者mysql_real_connect(大概就是这么拼的吧。。。)可以使用mysql_query执行sql语句
#include mysql.h
main()
{
MYSQL *conn;
MYSQL_RES *res;
MYSQL_ROW row;
char *server = "localhost";
char *user = "root";
char *password = ""; /* 此处改成你的密码 */
char *database = "mysql";
conn = mysql_init(NULL);
/* Connect to database */
if (!mysql_real_connect(conn, server, user, password, database, 0, NULL, 0))
{
fprintf(stderr, "%sn", mysql_error(conn));
exit(1);
}
/* send SQL query */
if (mysql_query(conn, "show tables"))
{
fprintf(stderr, "%sn", mysql_error(conn));
exit(1);
}
res = mysql_use_result(conn);
/* output table name */
printf("MySQL Tables in mysql database:n");
while ((row = mysql_fetch_row(res)) != NULL)
{
printf("%s n", row[0]);
}
/* close connection */
mysql_free_result(res);
mysql_close(conn);
}