C语言访问mysql数据库简单实例

不像oracle, MYSQL数据库并不支持嵌入式SQL语言。

但是提供了功能强大的C,C++支持API,其中c语言的API在参考手册的第25部分,独立于这个3000多页的参考手册之外的另外部分的

MySQL++是用于C++MySQL APIWarren Young负责该项目。要想了解更多信息,请访问http://www.mysql.com/products/mysql++/

 

当然mysql似乎最为广泛的应用是个php脚本语言一起,apache,一起用做网站的后台数据库服务程序,这个做过好多。

 

同时我是一个C程序员,碰到什么总是想用c试试,这几天忙着准备军转考试,

刚好有点闲暇时间,顺便把c和mysql数据库的访问再复习一遍。

 

运行环境是SunOS x4100 5.10 Generic_118855-33 i86pc i386 i86pc;编译器是gcc,外加Llibmysqlclient库。

 

#include <stdio.h>
#include <string.h>
#include <mysql.h>
#include <stdlib.h>
main()
{
        MYSQL *conn;
        MYSQL_RES *res;
        MYSQL_ROW row;
        char *server = "mysql";
        char *user = "huzia";
        char *password = "cjrIwo"; /*  */
        char *database = "huzia";
        conn = mysql_init(NULL);

        /* Connect to database */
        if (!mysql_real_connect(conn, server,
        user, password, database, 0, NULL, 0)) {
        fprintf(stderr, "%s\n", mysql_error(conn));
                exit(1);
        }

        /* send SQL query */
        if (mysql_query(conn, "show tables")) {
                fprintf(stderr, "%s\n", 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);
}


运行成功。

你可能感兴趣的:(C语言访问mysql数据库简单实例)