天天看點

mysql c api 程式設計(一)

#include <mysql/mysql.h>

#include <stdio.h>

#include <stdlib.h>

int main() {

    MYSQL *conn;

    MYSQL_RES *res;

    MYSQL_ROW row;

    char *server = "localhost";

    char *user = "root";

    char *password = "1qaz@WSX3edc$RFVyl";

    char *database = "mymysql";

    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")) {

    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);

    return 0;

}

gcc `mysql_config --cflags` mysql-1.c `mysql_config --libs` -o test

bn@YL-RD:~/projects/test$ ldd test 

    linux-vdso.so.1 =>  (0x00007ffcc1111000)

    libmysqlclient.so.20 => /usr/lib/x86_64-linux-gnu/libmysqlclient.so.20 (0x00007f2e8a3a9000)

    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f2e89fdf000)

    libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f2e89dc4000)

    libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f2e89bc0000)

    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f2e899a3000)

    libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f2e89620000)

    libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f2e89317000)

    libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f2e89101000)

    /lib64/ld-linux-x86-64.so.2 (0x000055dcebb91000)

bn@YL-RD:~/projects/test$ ./test 

MySQL Tables in mysql database:

data 

tx 

wallet 

      本文轉自FrankNie0101 51CTO部落格,原文連結:http://blog.51cto.com/frankniefaquan/1960240,如需轉載請自行聯系原作者

繼續閱讀