上一节我们看了怎么使用mysql提供的API来连接mysql数据库,现在来看看怎么执行一条简单的查询语句,并且把查询的结果显示出来。
准备工作:首先新建了一个数据库inote,在这个数据库下面新建了一张表user,有两个字段,分别是username, password.事先插入几条数据,以便待会儿看到效果。
编码:
char sql[] = "select * from user;"; //查询语句
#include <cstdio>
#include <mysql/mysql.h> using namespace std; int main()
{
MYSQL *conn;
MYSQL_RES *res; //结果集
char server[] = "localhost"; //数据库服务器地址
char user[] = "root"; //用户名
char password[] = "admin"; //密码
char database[] = "inote"; //数据库名
conn = mysql_init(NULL); //初始化数据库连接 if (!mysql_real_connect(conn, server,user, password, database,
, NULL, )) //连接数据库
{
fprintf(stderr, "%s\n", mysql_error(conn));
return -;
}
printf("连接成功!\n");
char sql[] = "select * from user;"; //查询语句
mysql_query(conn, (char*)sql); //执行sql语句
res = mysql_store_result(conn); //将查询结果装进MYSQL_RES
int rows = mysql_num_rows(res); //获取结果行数 printf("the number of the result is %d\n", rows);
while(rows--)
{
MYSQL_ROW row = mysql_fetch_row(res); //从结果集中获取一行
printf("%s %s\n", row[], row[]); //row[0]表示第一个字段值,row[1]表示第二个字段值
}
mysql_free_result(res); //查询完后记得要释放
mysql_close(conn);
return ;
}