demo
/************************************************************ FileName : demo.c FileFunc : C语言接口访问MySQL Version : V0.1 Author : JeffSui Date : 2014-02-20 Descp : c查询mysql数据库遍历输出 *************************************************************/ #include <stdio.h> #include <stdlib.h> #include "/usr/include/mysql/mysql.h" int main(int argc,char *argv[]) { MYSQL my_connection,*conn_ptr; MYSQL_RES *res_ptr; MYSQL_ROW sqlrow; int iRet; int iTableRow,iTableCol,i,j; char *server = "localhost"; char *user = "root"; char *password = ""; char *database = "csql"; unsigned int uiTimeOut = 7;//设置连接超时7s conn_ptr = mysql_init(&my_connection);//初始化连接句柄 if( !conn_ptr ) { fprintf(stderr,"mysql_init failed ! \n"); return EXIT_FAILURE; } iRet = mysql_options(&my_connection,MYSQL_OPT_CONNECT_TIMEOUT,(const char *)&uiTimeOut);//设置连接超时 if( iRet ) { fprintf(stderr,"Connection is timeout! \n"); return EXIT_FAILURE; } conn_ptr = mysql_real_connect(&my_connection,server,user,password,database,0,NULL,0);//连接数据库 if( conn_ptr ) { printf("Connection success!\n"); iRet = mysql_query(&my_connection,"select * from children");//执行SQL语句 if( iRet ) { fprintf(stderr,"select error %d: %s !\n",mysql_errno(&my_connection),mysql_error(&my_connection));//>打印错误处理具体信息 return EXIT_FAILURE; } res_ptr = mysql_store_result(&my_connection);//集合 if( res_ptr ) { iTableRow = mysql_num_rows(res_ptr);//行 iTableCol = mysql_num_fields(res_ptr);//列 for(i=0; i<iTableRow; i++) { sqlrow = mysql_fetch_row(res_ptr); for(j=0; j<iTableCol; j++) { printf("%-8s ",sqlrow[j]);//字符串向左靠,右补空格 } printf("\n"); } mysql_free_result(res_ptr);//完成对数据的所有操作后,调用此函数来让MySQL库清理它分配的对象 } mysql_close(&my_connection);//关闭连接 } else { fprintf(stderr,"Connection failed!\n"); if( mysql_errno(&my_connection) ) { fprintf(stderr,"Connection error %d: %s!\n",mysql_errno(&my_connection),mysql_error(&my_connection)); } } return EXIT_SUCCESS; }insert.c
/****************************************************** FileName : insert.c FileFunc : C语言接口访问MySQL Version : V0.1 Author : JeffSui Date : 2014-02-24 Descp : c插入mysql数据库 ******************************************************/ #include <stdlib.h> #include <stdio.h> #include "/usr/include/mysql/mysql.h" int main() { MYSQL *conn_ptr; int res; conn_ptr = mysql_init(NULL); if (!conn_ptr) { printf("mysql_init failed\n"); return EXIT_FAILURE; } conn_ptr = mysql_real_connect(conn_ptr, "localhost", "root", "", "csql", 0, NULL, 0); if (conn_ptr) { res = mysql_query(conn_ptr, "insert into children values(null,'jeffsui',5)"); //可以把insert语句替换成delete或者update语句,都一样的 if(!res){ printf("Insert %lu rows\n",(unsigned long)mysql_affected_rows(conn_ptr)); }else{ fprintf(stderr,"Insert error %d: %s\n",mysql_error(conn_ptr),mysql_error(conn_ptr)); } }else{ printf("Connection failed!"); } mysql_close(conn_ptr); return EXIT_SUCCESS;
linux下c操作mysql之增删改查
最新推荐文章于 2024-08-19 17:51:37 发布