本站不再更新,欢迎光临 java开发技术网
随笔-230  评论-230  文章-8  trackbacks-0
 

Windows平台下Mysql C程序设计

一、哆嗦一下

从打开始学编程以来,接触的第一门真正的编程语言是Cfoxbase不算),想当年俺自学完浩强叔那本《C语言程序设计》时,老师才开始教pascal。自毕业以来一直没有机会写过有应用价值的C程序,从Delphi做到J2EE。打算从现在开始利用业余时间学习Pro*CMysql C,也不知为啥对C念念不忘,却没机用C来写程序。

二、开发环境

1、 windowsXP

2、 mysql 5.0.22

3、 Dev-C++ 4.9.9.2

4、 Mysql C for Dev-Cpp (MySQL.DevPak)

a)         用过Dev-C++的人都应该知道devpak吧我就不详说,如果你用的是C++,请下载(mysqlpp-2.3.2-gcc3.4.2-1due.DevPak)

b)        MySQL.DevPak 下载地址: http://downloads.sourceforge.net/dev-cpp/MySQL.DevPak

三、安装及配置

1、双击MySQL.DevPak文件,按步骤把这开发包安装完成。直到package Mangaer 出现“MySQL”即可。

2、单击“工具”->“编译选项”->“编译器”->“在连接器命令行中加下以下命令”(选择),在下面的文本框中添加-lmysql 

3、在Dev-C++中添加mysqllibinclude 文件,具体方法:

       “工具”->“编译选项”->“编译器”->“目录” 中添加

四、例程代码

#include <stdlib.h>

#include <winsock.h>

#include <mysql.h>

#include <stdio.h>

/*

 Name: 测试例子

 Copyright: http://www.blogjava.net/pdw2009  

 Author: 裴德万

 Date: 09-03-08 18:14

 Description:

*/

int main()

{

      MYSQL mysql;     //mysql连接

      MYSQL_RES *res; //这个结构代表返回行的一个查询结果集

      MYSQL_ROW row; //一个行数据的类型安全(type-safe)的表示

      char *query; //查询语句

      int t,r;

      mysql_init(&mysql);

      if (!mysql_real_connect(&mysql,"localhost", "lottobar", "123456", "lottobar",3306,NULL,0))

      {

         printf( "Error connecting to database: %s"n",mysql_error(&mysql));

      } else

         printf("Connected..."n");

      query="SET CHARACTER SET GBK"; //设置编码

      t=mysql_real_query(&mysql,query,(unsigned int)strlen(query));

      if(t)

      {

           printf("编码设置失败"n");

      }

      query=" select * from demo ";

      t=mysql_real_query(&mysql,query,(unsigned int)strlen(query));

      if(t)

      {

          printf("执行查询时出现异常: %s",mysql_error(&mysql));

      }else

          printf("[%s] 构建成功 "n",query);

      res=mysql_store_result(&mysql);

      while(row=mysql_fetch_row(res))

      {                              

           for(t=0;t<mysql_num_fields(res);t++)

           {

               printf("%s"t",row[t]);

           }

           printf(""n");

      }

      mysql_free_result(res);

      sleep(1);

      return 0; 

}

五、注意事项

Windows C程序设只要涉及网络的都应该加上这两个文件,否则肯定出错

#include <stdlib.h>

#include <winsock.h>

Mysql C乱码的解决方式

query="SET CHARACTER SET GBK"; //设置编码

t=mysql_real_query(&mysql,query,(unsigned int)strlen(query));

       如果你有问题可以到www.blogjava.net/pdw2009去交流



该文属作者原创,转载请注明出: http://www.blogjava.net/pdw2009
posted on 2008-03-09 18:26 有猫相伴的日子 阅读(4028) 评论(3)  编辑  收藏 所属分类: unix/windows C 程序设计

评论:
# re: Windows平台下Mysql C程序设计 2008-04-05 01:56 | 小禄
按照楼主的配置编译C程序后,有很多error  回复  更多评论
  
# re: Windows平台下Mysql C程序设计 2009-04-09 17:00 | shaw
好使 多谢啊:)  回复  更多评论
  
# re: Windows平台下Mysql C程序设计[未登录] 2009-04-16 13:35 | david
正在学习中,15076378 。  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航:
 
本站不再更新,欢迎光临 java开发技术网