时间:2021-05-25
怎么系统分类里面没有CGI啊?
最近好久没有发原创文章了,都在架构服务器,编写CGI程序
开头用了些天perl,后来发现对脚本语言尤其是特别牛X的正则表达式有些看不懂...
回头用C语言写高效率的吧,反正我自己写过好些C的库了...
下面贴一个mysql的库,叫做dmysql
解压缩以后,make;makeinstall安装
然后编译程序的时候,包含dmysql.h头文件,加上-ldmysql标识,即可
头里面定义了一个mysql数据库的结构体,
typedefstruct_dmysql_info
{
char*host;
char*user;
char*pswd;
char*dbbs;
}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);
下面是演示的程序代码:
#include<stdio.h>
#include<dmysql.h>
intmain(void)
{
dmysql_infodb;
db.host="127.0.0.1";
db.user="root";
db.pswd="";
db.dbbs="mysql";
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:%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);
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$
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了PHP封装mysqli基于面向对象的mysql数据库操作与用法。分享给大家供大家参考,具体如下:首先封装好mysql类mysql.phpconn=
详解JDBC数据库链接及相关方法的封装 使用的是MySQL数据库,首先导入驱动类,然后根据数据库URL和用户名密码获得数据的链接。由于使用的是MySQL数据库,
PHP5.0开始,不仅可以使用早期的mysql数据库扩展函数,还能使用新扩展的mysqli技术实现与mysql数据库的信息交流,PHP的mysqli扩展被封装在
1说明mysql++是mysql开发团队为OO编程提供的C++开发库,是对mysql提供的底层数据存取API进行的C++封装,用其手册上的说法是:复杂而又庞大,
自己封装的Mysql简易操作类,已塞在Ben框架中,基于PDO来写的,代码风格上有些无厘头。。。mysql.class.phpserver=$server;$t