Mysql libdbi的dbi_conn_connect在c中不工作

Mysql libdbi的dbi_conn_connect在c中不工作,mysql,c,database,linux,dbi,Mysql,C,Database,Linux,Dbi,我尝试使用gcc test.c-o test.o-ldbi命令执行以下代码 #include <stdio.h> #include <dbi/dbi.h> int main() { dbi_conn conn; dbi_result result; double threshold = 4.333333; unsigned int idnumber; const char *fullname; dbi_initiali

我尝试使用gcc test.c-o test.o-ldbi命令执行以下代码

#include <stdio.h>
#include <dbi/dbi.h>

int main() {
    dbi_conn conn;
    dbi_result result;

    double threshold = 4.333333;
    unsigned int idnumber;
    const char *fullname;

    dbi_initialize(NULL);
    conn = dbi_conn_new("mysql");

    dbi_conn_set_option(conn, "host", "localhost");
    dbi_conn_set_option(conn, "username", "root");
    dbi_conn_set_option(conn, "password", "root123");
    dbi_conn_set_option(conn, "dbname", "test");
    dbi_conn_set_option(conn, "encoding", "UTF-8");

    if (dbi_conn_connect(conn) < 0) {
        printf("Could not connect. Please check the option settings\n");
    }
    else {
        result = dbi_conn_queryf(conn, "SELECT id, name FROM users");

        if (result) {
                while (dbi_result_next_row(result)) {
                idnumber = dbi_result_get_uint(result, "id");
          fullname = dbi_result_get_string(result, "name");
          printf("%i. %s\n", idnumber, fullname);
        }
        dbi_result_free(result);
      }
      dbi_conn_close(conn);
    }

    dbi_shutdown();

    return 0;
}
我可以在命令行中使用测试数据库


请帮帮我。可能的问题是什么

在安装libdbd-mysql之后,它已经工作了。现在我已经安装了以下软件包

libdbd-mysql                   
libdbi0  
libdbi0-dev
谢谢大家

libdbd-mysql                   
libdbi0  
libdbi0-dev