C利用辅助函数获取Mysql数据库和表信息

来源:百度文库 编辑:神马文学网 时间:2024/04/25 17:57:26
C利用辅助函数获取Mysql数据库和信息 2006-10-13 21:42:51 大中小 #include    
#include
#include    <mysql/mysql.h>

int main()
{
    MYSQL mysql;
    MYSQL_RES *dbs;
    MYSQL_ROW db;
    MYSQL_RES *tbls;
    MYSQL_ROW tbl;
    
    mysql_init(&mysql);
   
    if(!mysql_real_connect(&mysql,"localhost","root","111111","mysql",0,NULL,0))
    {
        fprintf(stderr,"Error in connection : %s,[code %d]\n",mysql_error(&mysql),mysql_errno(&mysql));
    }
   
    fprintf(stdout, "connected to server on host %s\n",mysql_get_host_info(&mysql));
    fprintf(stdout, "server version %s\n", mysql_get_server_info(&mysql));
    fprintf(stdout, "client version %s\n", mysql_get_client_info());
    fprintf(stdout, "\n");
   
    dbs = mysql_list_dbs(&mysql,NULL);         //list db
   
    while(db = mysql_fetch_row(dbs))
    {
        fprintf(stdout, "%s: ",db[0]);
       
        mysql_select_db(&mysql,db[0]);
        tbls = mysql_list_tables(&mysql,NULL);
       
        while(tbl = mysql_fetch_row(tbls))
        {
            fprintf(stdout, "%s ",tbl[0]);
        }
       
        fprintf(stdout, "\n");
        mysql_free_result(tbls);
    }
   
    mysql_free_result(dbs);
    mysql_close(&mysql);       
}