dmysql自己封装的mysql库

2020-03-19 09:18 来源:未知

怎么系统分类里面没有CGI啊? 最近好久没有发原创文章了,都在架构服务器,编写CGI程序 开头用了些天perl,后来发现对脚本语言尤其是特别牛X的正则表达式有些看不懂... 回头用C语言写高效率的吧,反正我自己写过好些C的库了... 下面贴一个mysql的库,叫做dmysql 解压缩以后,make;makeinstall安装 然后编译程序的时候,包含dmysql.h头文件,加上-ldmysql标识,即可 头里面定义了一个mysql数据库的结构体, typedefstruct_dmysql_info { char*host;/*hostfordatabase*/ char*user;/*usernamefordatabase*/ char*pswd;/*passwordtotheaccount*/ char*dbbs;/*nameofdatabase*/ }dmysql_info; 记录集的数据类型 typedefstruct_dmysql_record { char*s_str; }dmysql_record; typedefstruct_dmysql_row { dmysql_record*s_record; }dmysql_row; typedefstruct_d_mysql_res { introw; intfield; dmysql_row*s_row; }dmysql_res; 还有程序运行时候的出错代码 #defineDMYSQL_QUERY_OKAY0 #defineDMYSQL_SELECT_OKAY0 #defineDMYSQL_CONNECT_ERROR-1 #defineDMYSQL_INIT_ERROR-2 #defineDMYSQL_QUERY_ERROR-3 #defineDMYSQL_RES_ERROR-4 程序一共就3个函数 externintdmysql_query(constchar*s_query,constdmysql_infomysql_info); 给出一句执行的SQL命令,比如UPDATE、INSERT,指定一个数据库,就可以了 externintdmysql_select(dmysql_res**rel_res,constchar*s_select,constdmysql_infomysql_info); 传入一个数据库记录集的地址,给出一个SELECT记录的SQL命令,再制定一个数据库,就可以了 用来释放内存中在栈里面申明了的记录集空间 externvoiddmysql_free(dmysql_res*res); 下面是演示的程序代码: #includestdio.h #includedmysql.h intmain(void) { dmysql_infodb; db.host="127.0.0.1";/*hostfordatabase*/ db.user="root";/*usernamefordatabase*/ db.pswd="";/*passwordtotheaccount*/ db.dbbs="mysql";/*nameofdatabase*/ char*s_query="GRANTALLON*.*to'dorainm'@'127.0.0.1'IDENTIFIEDBY'******';"; char*s_sql="SELECT`user`,`host`,`password`FROM`user`;"; inti,j; dmysql_res*res; dmysql_query(s_query,db); printf("selectout:%dn",dmysql_select(&res,s_sql,db)); for(i=0;ires-row;i ) { for(j=0;jres-field;j ) { printf("%st",((res-s_row i)-s_record j)-s_str); } printf("n"); } dmysql_free(res); return0; }; maketest后运行./dmysql dorainm@desktop:~/workroom/c/mylib/dmysql$maketestgcc-Wall-O3-odmysqlmain.c-ldmysql`mysql_config--libs``mysql_config--cflags`dorainm@desktop:~/workroom/c/mylib/dmysql$./dmysql selectout:5 rootlocalhost%^$#!@%*&! rootdesktop.dorainm.org%^$#!@%*&! desktop.dorainm.org%^$#!@%*&! localhost%^$#!@%*&! dorainm127.0.0.1%^$#!@%*&!dorainm@desktop:~/workroom/c/mylib/dmysql$

TAG标签:
版权声明:本文由美洲杯赌球发布于计算机教程,转载请注明出处:dmysql自己封装的mysql库