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’)”还是“用户密码错误”造成的。
悬赏可追加。 展开
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’)”还是“用户密码错误”造成的。
悬赏可追加。 展开
2个回答
展开全部
应该这样用,连接的时候不要指定数据库,分步操作和检测
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));
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));
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询