);
}
printf("\n");
}
}
mysql测试数据及表结构:
DROP TABLE IF EXISTS `t_user`;
CREATE TABLE `t_user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(32) DEFAULT NULL,
`age` int(11) DEFAULT NULL,
`address` varchar(100) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
LOCK TABLES `t_user` WRITE;
INSERT INTO `t_user` VALUES (1,'zhangsan',22,'hunan'),(2,'lisi',30,'beijin');
UNLOCK TABLES;测试结果:
DSC0008.jpg (3.75 KB, 下载次数: 1)
2015-11-9 16:04 上传
小结配置步聚:
1> 安装mysql
2> 创建VS工程,配置工程头文件(mysql.h所在目录)和库文件(libmysql.lib所在目录)附加目录,指向mysql对应的目录
3> 将libmysql.dll动态库拷贝到工程根目录或Debug目录
4> 编写测试程序,验证C连接Mysql数据库
----------------------------------------------------------------------优雅的分割线------------------------------------------------------------------------------------
常见错误:
1、main.obj : error LNK2019: 无法解析的外部符号 mysql_init。。。。。
DSC0009.jpg (5.55 KB, 下载次数: 1)
2015-11-9 16:04 上传
原因是没有在工程当中添加libmysql.lib配置,配置库文件目录
2、无法启动此程序,因为计算机中丢失libmyslq.dll。。。。
DSC00010.jpg (6.48 KB, 下载次数: 1)
2015-11-9 16:04 上传
将libmysql.dll动态库拷贝到工程的根目录或Debug目录下。
3、未引入windows.h头文件,因为在windows连接mysql是通过socket方式与数据库进行通信的
DSC00011.jpg (9.13 KB, 下载次数: 1)
2015-11-9 16:04 上传
4、main.obj : error LNK2019: 无法解析的外部符号 _mysql_init@4,该符号在函数 _main 中被引用.....
数据库位数与编译位数不一致,导致在链接时mysql的库函数找不到,比如:我的mysql是64位,提供的库当然是64位的,如果你在VS上用32位的平台去编译就会造成链接时出错。
DSC00012.jpg (5.24 KB, 下载次数: 0)
2015-11-9 16:04 上传
修改编译平台,工程-->属性-->配置管理器-->在解决方案的工程列表中选择对应的项目,并将其修改成32位或64位,如果没有就新建一个。
DSC00013.jpg (36.46 KB, 下载次数: 0)
2015-11-9 16:04 上传
工程源码下载:Windows平台C连接MySQL数据库
参考文档:
C/C++连接MySql数据库
版权声明:本文为博主原创文章,未经博主允许不得转载。