小弟初学MySQL 编程  用MySQL中提供的C API  写个简单的连接到mysqlserver 的问题 代码是从mysql帮助手册里 找来的 
 介绍的mysql_real_connect 这个函数的   代码如下#include <mysql.h>
#include <stdio.h>int main()
{
    
MYSQL mysql;
 
mysql_init(&mysql);
mysql_options(&mysql,MYSQL_READ_DEFAULT_GROUP,"your_prog_name");
if (!mysql_real_connect(&mysql,"host","user","passwd","database",0,NULL,0))
{
    fprintf(stderr, "Failed to connect to database: Error: %s\n",mysql_error(&mysql));
}}
出现的错误  很多 错误如下
  mysql server 6.0\include\mysql_com.h(268) : error C2061: syntax error : identifier 'SOCKET'
mysql server 6.0\include\mysql_com.h(304) : error C2059: syntax error : '}'
mysql server 6.0\include\mysql_com.h(418) : error C2143: syntax error : missing ')' before '*'
mysql server 6.0\include\mysql_com.h(418) : error C2143: syntax error : missing '{' before '*'
mysql server 6.0\include\mysql_com.h(418) : error C2371: 'Vio' : redefinition; different basic types
        mysql server 6.0\include\mysql_com.h(254) : see declaration of 'Vio'
mysql server 6.0\include\mysql_com.h(418) : error C2143: syntax error : missing ';' before '*'
mysql server 6.0\include\mysql_com.h(418) : error C2059: syntax error : ')'
mysql server 6.0\include\mysql_com.h(419) : error C2143: syntax error : missing ')' before '*'
mysql server 6.0\include\mysql_com.h(419) : error C2143: syntax error : missing '{' before '*'
mysql server 6.0\include\mysql_com.h(419) : error C2059: syntax error : ')'
mysql server 6.0\include\mysql_com.h(420) : error C2143: syntax error : missing ')' before '*'
mysql server 6.0\include\mysql_com.h(420) : error C2143: syntax error : missing '{' before '*'
mysql server 6.0\include\mysql_com.h(420) : error C2059: syntax error : ')'
mysql server 6.0\include\mysql_com.h(421) : error C2143: syntax error : missing ')' before '*'
mysql server 6.0\include\mysql_com.h(421) : error C2143: syntax error : missing '{' before '*'
mysql server 6.0\include\mysql_com.h(421) : error C2371: 'my_bool' : redefinition; different basic types
        mysql server 6.0\include\mysql.h(51) : see declaration of 'my_bool'
mysql server 6.0\include\mysql_com.h(421) : error C2146: syntax error : missing ';' before identifier 'clear_buffer'
mysql server 6.0\include\mysql_com.h(421) : error C2059: syntax error : ')'
mysql server 6.0\include\mysql_com.h(422) : error C2143: syntax error : missing ')' before '*'
mysql server 6.0\include\mysql_com.h(422) : error C2143: syntax error : missing '{' before '*'
mysql server 6.0\include\mysql_com.h(422) : error C2146: syntax error : missing ';' before identifier 'length'
mysql server 6.0\include\mysql_com.h(422) : error C2059: syntax error : ')'
mysql server 6.0\include\mysql_com.h(422) : warning C4142: benign redefinition of type
mysql server 6.0\include\mysql_com.h(423) : error C2143: syntax error : missing ')' before '*'
mysql server 6.0\include\mysql_com.h(423) : error C2143: syntax error : missing '{' before '*'
mysql server 6.0\include\mysql_com.h(423) : error C2059: syntax error : ')'
mysql server 6.0\include\mysql_com.h(424) : error C2143: syntax error : missing ')' before '*'
mysql server 6.0\include\mysql_com.h(424) : error C2143: syntax error : missing '{' before '*'
mysql server 6.0\include\mysql_com.h(424) : error C2059: syntax error : 'type'
mysql server 6.0\include\mysql_com.h(424) : error C2059: syntax error : ')'
mysql server 6.0\include\mysql_com.h(425) : error C2143: syntax error : missing ')' before '*'
mysql server 6.0\include\mysql_com.h(425) : error C2143: syntax error : missing '{' before '*'
mysql server 6.0\include\mysql_com.h(425) : error C2059: syntax error : 'type'
mysql server 6.0\include\mysql_com.h(427) : error C2059: syntax error : ')'mysql server 6.0\include\my_alloc.h(40) : error C2061: syntax error : identifier 'min_malloc'
mysql server 6.0\include\my_alloc.h(40) : error C2059: syntax error : ';'
mysql server 6.0\include\my_alloc.h(41) : error C2061: syntax error : identifier 'block_size'
mysql server 6.0\include\my_alloc.h(41) : error C2059: syntax error : ';'
mysql server 6.0\include\my_alloc.h(50) : error C2059: syntax error : '}'
mysql server 6.0\include\typelib.h(35) : error C2143: syntax error : missing ')' before '*'
mysql server 6.0\include\typelib.h(35) : error C2143: syntax error : missing '{' before '*'
mysql server 6.0\include\typelib.h(35) : error C2371: 'TYPELIB' : redefinition; different basic types
        mysql server 6.0\include\typelib.h(27) : see declaration of 'TYPELIB'
mysql server 6.0\include\typelib.h(35) : error C2143: syntax error : missing ';' before '*'
mysql server 6.0\include\typelib.h(35) : error C2059: syntax error : ')'
mysql server 6.0\include\mysql.h(153) : error C2061: syntax error : identifier 'MEM_ROOT'
mysql server 6.0\include\mysql.h(158) : error C2059: syntax error : '}'
mysql server 6.0\include\mysql.h(237) : error C2061: syntax error : identifier 'NET'
mysql server 6.0\include\mysql.h(242) : error C2040: 'fields' : 'struct st_mysql_field *' differs in levels of indirection from 'unsigned int '
mysql server 6.0\include\mysql.h(243) : error C2061: syntax error : identifier 'field_alloc'
mysql server 6.0\include\mysql.h(243) : error C2059: syntax error : ';'
mysql server 6.0\include\mysql.h(262) : error C2373: 'scramble' : redefinition; different type modifiers
        mysql server 6.0\include\mysql_com.h(511) : see declaration of 'scramble'
mysql server 6.0\include\mysql.h(264) : error C2040: 'unused2' : 'void *' differs in levels of indirection from 'char '
mysql server 6.0\include\mysql.h(264) : error C2040: 'unused3' : 'void *' differs in levels of indirection from 'char '
mysql server 6.0\include\mysql.h(264) : error C2040: 'unused4' : 'void *' differs in levels of indirection from 'char '
mysql server 6.0\include\mysql.h(264) : error C2040: 'unused5' : 'void *' differs in levels of indirection from 'char '
mysql server 6.0\include\mysql.h(277) : error C2059: syntax error : '}'
mysql server 6.0\include\mysql.h(283) : error C2061: syntax error : identifier 'MYSQL_DATA'mysql server 6.0\include\mysql.h(354) : error C2143: syntax error : missing ')' before '*'
mysql server 6.0\include\mysql.h(354) : error C2143: syntax error : missing '{' before '*'
mysql server 6.0\include\mysql.h(354) : error C2059: syntax error : ')'
mysql server 6.0\include\mysql.h(355) : error C2143: syntax error : missing ')' before '*'mysql server 6.0\include\mysql.h(359) : error C2059: syntax error : ')'
mysql server 6.0\include\mysql.h(359) : fatal error C1003: error count exceeds 100; stopping compilation
错误太多 删了一部分
  求教各位大侠 这个是怎么回事

解决方案 »

  1.   

    socket端口问题把?看不出具体哪里的问题
      

  2.   

    晕死  来点具体的   socket   出了什么问题  你说清楚点 我不是太明白 额   
      

  3.   

    是系统文件报的错误,是mysql提供的文件问题
    建议你检查一下这个文件,是不是少引用了socket.h?
      

  4.   

    mysql 的文件应该没有问题把   都是才安装的我试 了 两个 一个6.0的一个是5.1的  貌似情况都是这样的
      

  5.   

    好了 已经解决了 原来 只要 价格winsock2的头文件 就解决了