Simple MySQL-C ORM - 簡化C語言訪問MySQL

jopen 11年前發布 | 19K 次閱讀 MySQL C/C++開發

當你需要在純C語言的應用程序中訪問 MySQL 表中的數據時,是非常繁瑣的事情,而該框架可以幫你大量的簡化編碼的工作,該框架采用 Python 開發,適用于 C 語言程序。

示例代碼
#include <db.h>
#include <stdio.h>
#include <string.h>
#include <time.h>


int main (int argc, char **argv)
{
    int ret;
    MYSQL global_mysql;
    MYSQL *m;

    db_ex_customer *cust1;
    db_ex_item *item1, *item2;

    mysql_init (& global_mysql);

    /*
     * connect to MySQL as usual
     */
    m = mysql_real_connect (& global_mysql, "localhost", "root", "", "ex1", 3036, NULL, 0);

    /*
     * pass the MySQL connection to function, that initializes the "ORM"
     */
    ret = db_init (& global_mysql);

    /*
     * the *__new method creates empty structure
     */
    cust1 = db_ex_customer__new ();
    /*
     * setting the structure attribute with allocated string,
     * it will be freed during call of *__free method
     */
    cust1->name = strdup ("alesak");

    /*
     * this methods inserts the structure into according table.
     * If it has serial field, its value is reflected into structure
     */
    ret = db_ex_customer__insert (cust1);

    item1 = db_ex_item__new ();
    item1->customer_id = cust1->id;
    item1->itemname = strdup ("simple orm");

    ret = db_ex_item__insert (item1);

    item2 = db_ex_item__new ();
    item2->customer_id = cust1->id;
    item2->itemname = strdup ("advanced orm");

    ret = db_ex_item__insert (item2);

    db_ex_customer__free (cust1);
    db_ex_item__free (item1);
    db_ex_item__free (item2);

    return (0);
}

項目主頁:http://www.baiduhome.net/lib/view/home/1357894440650

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!