利用mysql提供的c语言接口操作数据库

来源:互联网 发布:淘宝主机烈士墙 编辑:程序博客网 时间:2024/06/03 22:58

http://blog.csdn.net/bladeandmaster88/article/details/52980872

  1. //1.工程要在c/c++->常规->附加包含目录添加mysql.h的路径D:\mysql5.5\include  
  2. //2.工程要在链接器->常规->附加库目录添加libmysql.lib的路径D:\mysql5.5\lib  
  3.   
  4. #include <WinSock2.h>//mysql的库用到了windows网络接口  
  5. #include <mysql.h>  
  6.   
  7. #pragma comment(lib, "libmysql.lib")  
  8.   
  9. #include <iostream>  
  10. using namespace std;  
  11.   
  12. int main()  
  13. {  
  14.     MYSQL mysql;  
  15.     MYSQL_RES *res;  
  16.     MYSQL_ROW row;  
  17.   
  18.     // 初始化MYSQL变量  
  19.     mysql_init(&mysql);  
  20.   
  21.     // 连接Mysql服务器,本例使用本机作为服务器。访问的数据库名称为"student",参数中的user为你的登录用户名,***为登录密码,  
  22.     //需要根据你的实际用户进行设置  
  23.     //如果连接成功,返回MYSQL*连接句柄。如果连接失败,返回NULL  
  24.     if(!mysql_real_connect(&mysql, "127.0.0.1""root""123456""student", 3306, 0, 0))  
  25.     {  
  26.         cout << "mysql_real_connect failure!" << endl;  
  27.         return 0;  
  28.     }  
  29.   
  30.     // 查询mysql数据库中的t_student表  
  31.     //如果查询成功,函数返回零。如果发生一个错误,函数返回非零。  
  32.     if(mysql_real_query(&mysql, "select * from t_student", (unsigned long)strlen("select * from t_student")))  
  33.     {  
  34.         cout << "mysql_real_query failure!" << endl;  
  35.         return 0;  
  36.     }  
  37.   
  38.     // 存储结果集  
  39.     res = mysql_store_result(&mysql);  
  40.     if(NULL == res)  
  41.     {  
  42.         cout << "mysql_store_result failure!" << endl;  
  43.         cout << mysql_error(&mysql) << endl;  
  44.         return 0;  
  45.     }  
  46.   
  47.     // 重复读取行,并输出第一个字段的值,直到row为NULL  
  48.   
  49.     while(row = mysql_fetch_row(res))  
  50.     {  
  51.         cout << row[0] << endl;  
  52.     }  
  53.   
  54.     // 释放结果集  
  55.     mysql_free_result(res);  
  56.   
  57.     // 关闭Mysql连接  
  58.     mysql_close(&mysql);  
  59.   
  60.     return 0;  
  61. }  


原创粉丝点击