激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數(shù)據(jù)庫技術(shù)|

服務(wù)器之家 - 數(shù)據(jù)庫 - Mysql - dmysql自己封裝的mysql庫

dmysql自己封裝的mysql庫

2019-10-18 16:16mysql技術(shù)網(wǎng) Mysql

怎么系統(tǒng)分類里面沒有CGI?。?最近好久沒有發(fā)原創(chuàng)文章了,都在架構(gòu)服務(wù)器,編寫CGI程序 開頭用了些天perl,后來發(fā)現(xiàn)對腳本語言尤其是特別牛X的正則表達式有些看不懂... 回頭用C語言寫高效率的吧,反正我自己寫過好些C的庫了

怎么系統(tǒng)分類里面沒有CGI?。?nbsp;

最近好久沒有發(fā)原創(chuàng)文章了,都在架構(gòu)服務(wù)器,編寫CGI程序 
開頭用了些天perl,后來發(fā)現(xiàn)對腳本語言尤其是特別牛X的正則表達式有些看不懂... 
回頭用C語言寫高效率的吧,反正我自己寫過好些C的庫了... 

下面貼一個mysql的庫,叫做dmysql 
解壓縮以后,make ; make install 安裝 
然后編譯程序的時候,包含dmysql.h頭文件,加上 -ldmysql標(biāo)識,即可 

頭里面定義了一個mysql數(shù)據(jù)庫的結(jié)構(gòu)體, 

typedef struct _dmysql_info 

     char *host; /*host for database*/ 
     char *user; /*user name for database*/ 
     char *pswd; /*password to the account*/ 
     char *dbbs; /*name of database*/ 
} dmysql_info; 



記錄集的數(shù)據(jù)類型 
typedef struct _dmysql_record 

     char *s_str; 
} dmysql_record; 


typedef struct _dmysql_row 

     dmysql_record *s_record; 
} dmysql_row; 


typedef struct _d_mysql_res 

     int row; 
     int field; 
     dmysql_row *s_row; 
} dmysql_res; 



還有程序運行時候的出錯代碼 
#define DMYSQL_QUERY_OKAY 0 
#define DMYSQL_SELECT_OKAY 0 
#define DMYSQL_CONNECT_ERROR -1 
#define DMYSQL_INIT_ERROR -2 
#define DMYSQL_QUERY_ERROR -3 
#define DMYSQL_RES_ERROR -4 


程序一共就3個函數(shù) 
extern int dmysql_query( const char * s_query, const dmysql_info mysql_info ); 

給出一句執(zhí)行的SQL命令,比如UPDATE、INSERT,指定一個數(shù)據(jù)庫,就可以了 

extern int dmysql_select( dmysql_res **rel_res, const char *s_select, const dmysql_info mysql_info ); 

傳入一個數(shù)據(jù)庫記錄集的地址,給出一個SELECT記錄的SQL命令,再制定一個數(shù)據(jù)庫,就可以了 

用來釋放內(nèi)存中在棧里面申明了的記錄集空間 

extern void dmysql_free( dmysql_res *res ); 

下面是演示的程序代碼: 
#include <stdio.h> 
#include <dmysql.h> 

int main( void ) 

    dmysql_info db; 
    db.host="127.0.0.1"; /*host for database*/ 
    db.user="root"; /*user name for database*/ 
    db.pswd=""; /*password to the account*/ 
    db.dbbs="mysql"; /*name of database*/ 

    char *s_query="GRANT ALL ON *.* to 'dorainm'@'127.0.0.1' IDENTIFIED BY '******';"; 
    char *s_sql="SELECT `user`,`host`,`password` FROM `user`;"; 

    int i, j; 
    dmysql_res *res; 

    dmysql_query( s_query, db ); 


    printf( "select out : %d\n", dmysql_select( &res, s_sql, db ) ); 
    for( i=0; i<res->row; i++ ) 
    { 
        for( j=0; j<res->field; j++ ) 
        { 
            printf("%s\t", ((res->s_row+i)->s_record+j)->s_str ); 
        } 
        printf( "\n" ); 
    } 
    dmysql_free( res ); 

    return 0; 
}; 

make test后運行./dmysql 

dorainm@desktop:~/workroom/c/mylib/dmysql$ make test gcc -Wall -O3 -o dmysql main.c -ldmysql `mysql_config --libs` `mysql_config --cflags` dorainm@desktop:~/workroom/c/mylib/dmysql$ ./dmysql 

select out : 5 
root localhost %^$#!@%*&! 
root desktop.dorainm.org %^$#!@%*&!  
 desktop.dorainm.org %^$#!@%*&!  
 localhost %^$#!@%*&! 
dorainm 127.0.0.1 %^$#!@%*&! dorainm@desktop:~/workroom/c/mylib/dmysql$ 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 天堂在线中文资源 | 久久久久久免费 | 久久艹综合 | 国产做爰| 色综合中文字幕 | 欧美大逼网 | 亚洲精品tv久久久久久久久久 | 一级黄色影片在线观看 | 538任你躁在线精品视频网站 | 欧美久久久久久久久 | 性少妇videosexfreexxx片 | 意大利av在线 | 日本成人在线免费 | 片在线观看 | 国产免费福利视频 | 在线看国产视频 | 黄色网址在线播放 | 国产乱色精品成人免费视频 | 国产69精品久久久久9999不卡免费 | 国产三级午夜理伦三级 | 久久久国产电影 | 国产精品91久久久 | 在线成人免费视频 | 中日韩免费视频 | 日本爽快片100色毛片视频 | 久久精品一区二区三区不卡牛牛 | 欧美无限资源 | 九九热播视频 | 综合网天天色 | 日本羞羞影院 | 国产91小视频在线观看 | 欧美性生交zzzzzxxxxx | 欧美日韩在线视频观看 | 精品国产一区二区三区四区在线 | 毛片网站视频 | 思思久而久而蕉人 | 久草在线小说 | 92看片淫黄大片一级 | 91九色视频 | 久久久久久亚洲综合影院红桃 | 日韩在线观看视频一区 |