Centos 6.5下C连接MysqL测试
#include <stdio.h> #include <string.h> #include <errno.h> #include "MysqL.h" int main(void) { MysqL *conn_ptr; MysqL_RES *res; MysqL_ROW row; char *host = "127.0.0.1"; char *user = "root"; char *password = "123456"; char *db = "MysqL"; unsigned int port = 3306; char *unix_socket = NULL; unsigned long client_flag = 0; conn_ptr = MysqL_init(NULL); if(!conn_ptr) { fprintf(stderr,"init MysqL Failed\n"); return(-1); } conn_ptr = MysqL_real_connect(conn_ptr,host,user,password,db,port,unix_socket,client_flag); if(conn_ptr) { printf("Connection success......\n"); } else { fprintf(stderr,"Connection Failed......%d:%s\n",errno,strerror(errno)); } if( MysqL_query(conn_ptr,"select host,user from user")) { fprintf(stderr,"call MysqL_query Failed......%d:%s\n",strerror(errno)); } res = MysqL_use_result(conn_ptr); fprintf(stdout,user from user talbe in the MysqL database:\n"); while((row = MysqL_fetch_row(res))) { fprintf(stdout,"%s\t%s\n",row[0],row[1]); } //增加MysqL数据表的条目 if( MysqL_query( conn_ptr,"insert into t_user values( 'Anna' )" ) ){ printf("增加数据表条目失败 %d: %s\n",MysqL_errno(conn_ptr),MysqL_error(conn_ptr));//打印出错误代码及详细信息 }else{ printf("增加数据表条目成功 Inserted %lu rows\n",(unsigned long)MysqL_affected_rows(conn_ptr));//输出受影响的行数 } //增加MysqL数据表的条目 if( MysqL_query( conn_ptr,"insert into t_user values( 'Lisa' )" ) ){ printf("增加数据表条目失败 %d: %s\n",(unsigned long)MysqL_affected_rows(conn_ptr));//输出受影响的行数 } //删除MysqL数据表的条目 if( MysqL_query( conn_ptr,"delete from t_user where name='Anna'" ) ){ printf("删除数据表条目失败 %d: %s\n",MysqL_error(conn_ptr));//打印出错误代码及详细信息 }else{ printf("删除数据表条目成功 Delete %lu rows\n",(unsigned long)MysqL_affected_rows(conn_ptr));//输出受影响的行数 } //更新修改MysqL数据表的条目 if( MysqL_query( conn_ptr,"update t_user set name='Lisa00000' where name='Lisa'" ) ) { printf("修改数据表条目失败 %d: %s\n",MysqL_error(conn_ptr));//打印出错误代码及详细信息 } else//成功 { printf("修改数据表条目成功 Update %lu rows\n",(unsigned long)MysqL_affected_rows(conn_ptr));//输出受影响的行数 } //查询MysqL数据库中的表格 if( MysqL_real_query(conn_ptr,"select * from t_user",(unsigned long)strlen("select * from t_user")) )//MysqL_real_query函数第一个参数是定义的MysqL变量;第二个是SQL查询语句;第三个是查询语句的长度 { printf("查询数据失败。\n"); } else//查询数据成功 { //存储结果集 if( (res=MysqL_store_result(conn_ptr)) == NULL ) { printf("保存结果集失败。\n"); } else//保存结果集成功 { while( (row=MysqL_fetch_row(res)) != NULL )//重复读取行,直到row为NULL { printf("name is %s\n",row[1]);//打印当前行的数据 } } } MysqL_free_result(res); MysqL_close(conn_ptr); return 0; }
centos6.5编译:
gcc -o test test.c -I/usr/include/MysqL/ -lMysqLclient -Wall -g -L/usr/lib64/MysqL
原文链接:https://www.f2er.com/centos/379505.html