linux系统下c语言连接mysql数据库时有关mysql_error这个函数的返回值的问题,求知情人士 100

程序段如下:MYSQL*character_ptr;......character_ptr=mysql_real_connect(character_ptr,"local... 程序段如下:
MYSQL *character_ptr;
......
character_ptr = mysql_real_connect(character_ptr,"localhost","root","24157518","test_database",0,NULL,0);//Connecting
if(!character_ptr){
printf("Error connecting to database: %s\n", mysql_error(character_ptr));
}
......
请千万不要纠结于语法错误,原程序在正常情况下可以顺利执行。
现在我想知道:当我把test_database这个数据库删除后,在无法连接数据库的情况下,mysql_error会返回什么样的字符串,我自己试验结果是空的,有什么别的办法可以让他显示出来么。
如果不能显示,那么我通过什么方法能够区分无法连接是由“没有相关数据库(如unknown database ‘test_database’)”还是“用户密码错误”造成的。
悬赏可追加。
展开
 我来答
百度网友39d9835
2011-08-03 · TA获得超过615个赞
知道小有建树答主
回答量:573
采纳率:0%
帮助的人:747万
展开全部
应该这样用,连接的时候不要指定数据库,分步操作和检测

if(!mysql_real_connect(character_ptr,"localhost","root","24157518", NULL ,0,NULL,0))
printf("Error connecting to server: %s\n", mysql_error(character_ptr));

if(!mysql_select_db(character_ptr, "test_database"))
printf("Error connecting to database: %s\n", mysql_error(character_ptr));
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hunk0620
2011-07-29 · TA获得超过124个赞
知道答主
回答量:55
采纳率:0%
帮助的人:20万
展开全部
MYSQL mysql;
.....
mysql_init(&mysql);
if(!mysql_real_connect(&mysql,"localhost","root","123456",NULL,0,NULL,0))
{
printf("%s\n",mysql_error(&mysql));//如果无法连接数据库,这时就会说明原因!
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式