linux c mysql 编程(下)

Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->/*
*
*file name: mysql.c
*
*/
#include <stdio.h>
#include <stdlib.h>
#include "mysql.h"  

int main(void)
{
  const char *host = "localhost";
  const char *user = "root";
  const char *pass = "";
  const char *db   = "mysql";
 /* 定义mysql变量 */
     MYSQL mysql;
     MYSQL_RES *rs;
     MYSQL_ROW row;
     mysql_init(&mysql); /* 初始化 */
/* 连接数据库 */
if (!mysql_real_connect(&mysql, host, user, pass, db, 0, NULL, 0))
 {
          printf("%s", mysql_error(&mysql));
       
 }
  char *sql = "select host,user from user order by rand()";
  if (mysql_query(&mysql, sql)!=0)
  { /* 查询 */
          printf( "%s", mysql_errno(&mysql), mysql_error(&mysql));
         
   }
   rs = mysql_store_result(&mysql); /* 获取查询结果 */
   while ((row = mysql_fetch_row(rs)))
   {      /* 获取每一行记录 */
          printf( "%s---%s", row[0], row[1]);
   }
   mysql_free_result(rs); /* 释放结果集 */
   mysql_close(&mysql); /* 关闭连接 */
   return 1;

}


编译:$gcc -g -o mysql   -I/usr/local/mysql/include/mysql mysql.c -L/usr/locla/mysql/lib/mysql -lmysqlclient -lz
如果运行的时候报libmysqlclient.so.16 找不到错误,运行下面命令。
$ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so.16 /lib/libmysqlclient.so.16

如果运行程序:

 $gcc -g -o mysql   -I/usr/local/mysql/include/mysql mysql.c -L/usr/locla/mysql/lib/mysql -lmysqlclient -lz 会在当前目录生成 mysql文件

./mysql运行

或者

/path-to -mysql/mysql

你可能感兴趣的:(linux c mysql 编程(下))