现在我的环境是设好了
怎么用语句来连接MYSQL和查询MYSQL(是指在VC环境下,我在PHP环境下连接过)?

解决方案 »

  1.   

    无论如何你得先装MySQL的客户端吧(我用过的时候是ODBC的),然后要配置,如不想手动配置,就写注册表吧,连接串吧,就是ADO连接ODBC源的串就可以了。
    你应该能自已搞定吧。
      

  2.   

    现在我在VC环境下可以使用MYSQL数据库了
    我是说怎么写语句来连接MYSQL
    比如在PHP下是
    <?
    $db=mysql_connect("localhost","user","password");
    mysql_select_db("diskc_com_ioaty",$db);
    $result="insert into test(user,password) values('ioaty','shenhu')";
    mysql_query($result);
    ?>
      

  3.   

    我怎么用下面这个例子来连接我的数据库呢
    /*C4*/
    /****************************************************************/
    /* Author: Jethro Wright, III TS :  3/ 4/1998  9:15 */
    /* Date: 02/18/1998 */
    /* mytest.c :  do some testing of the libmySQL.DLL.... */
    /* */
    /* History: */
    /* 02/18/1998  jw3  also sprach zarathustra.... */
    /****************************************************************/
    #include        <windows.h>
    #include <stdio.h>
    #include <string.h>#include <mysql.h>#define DEFALT_SQL_STMT "SELECT * FROM db"
    #ifndef offsetof
    #define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
    #endif
    /********************************************************
    **
    ** main  :-
    **
    ********************************************************/int
    main( int argc, char * argv[] )
    {  char szSQL[ 200 ], aszFlds[ 25 ][ 25 ], szDB[ 50 ] ;
      const  char   *pszT;
      int i, j, k, l, x ;
      MYSQL * myData ;
      MYSQL_RES * res ;
      MYSQL_FIELD * fd ;
      MYSQL_ROW row ;  //....just curious....
      printf( "sizeof( MYSQL ) == %d\n", sizeof( MYSQL ) ) ;
      if ( argc == 2 )
        {
          strcpy( szDB, argv[ 1 ] ) ;
          strcpy( szSQL, DEFALT_SQL_STMT ) ;
         
        strcpy( szDB, "mysql" ) ;
        strcpy( szSQL, DEFALT_SQL_STMT ) ;
      }
      //....
      
      if ( (myData = mysql_init((MYSQL*) 0)) && 
           mysql_real_connect( myData, NULL, NULL, NULL, NULL, MYSQL_PORT,
       NULL, 0 ) )
        {
          if ( mysql_select_db( myData, szDB ) < 0 ) {
    printf( "Can't select the %s database !\n", szDB ) ;
    mysql_close( myData ) ;
    return 2 ;
          }
        }
      else {
        printf( "Can't connect to the mysql server on port %d !\n",
        MYSQL_PORT ) ;
        mysql_close( myData ) ;
        return 1 ;
      }
      //....
      if ( ! mysql_query( myData, szSQL ) ) {
        res = mysql_store_result( myData ) ;
        i = (int) mysql_num_rows( res ) ; l = 1 ;
        printf( "Query:  %s\nNumber of records found:  %ld\n", szSQL, i ) ;
        //....we can get the field-specific characteristics here....
        for ( x = 0 ; fd = mysql_fetch_field( res ) ; x++ )
          strcpy( aszFlds[ x ], fd->name ) ;
        //....
        while ( row = mysql_fetch_row( res ) ) {
          j = mysql_num_fields( res ) ;
          printf( "Record #%ld:-\n", l++ ) ;
          for ( k = 0 ; k < j ; k++ )
    printf( "  Fld #%d (%s): %s\n", k + 1, aszFlds[ k ],
    (((row[k]==NULL)||(!strlen(row[k])))?"NULL":row[k])) ;
          puts( "==============================\n" ) ;
        }
        mysql_free_result( res ) ;
      }
      else printf( "Couldn't execute %s on the server !\n", szSQL ) ;
      //....
      puts( "====  Diagnostic info  ====" ) ;
      pszT = mysql_get_client_info() ;
      printf( "Client info: %s\n", pszT ) ;
      //....
      pszT = mysql_get_host_info( myData ) ;
      printf( "Host info: %s\n", pszT ) ;
      //....
      pszT = mysql_get_server_info( myData ) ;
      printf( "Server info: %s\n", pszT ) ;
      //....
      res = mysql_list_processes( myData ) ; l = 1 ;
      if (res)
        {
          for ( x = 0 ; fd = mysql_fetch_field( res ) ; x++ )
    strcpy( aszFlds[ x ], fd->name ) ;
          while ( row = mysql_fetch_row( res ) ) {
    j = mysql_num_fields( res ) ;
    printf( "Process #%ld:-\n", l++ ) ;
    for ( k = 0 ; k < j ; k++ )
      printf( "  Fld #%d (%s): %s\n", k + 1, aszFlds[ k ],
      (((row[k]==NULL)||(!strlen(row[k])))?"NULL":row[k])) ;
    puts( "==============================\n" ) ;
          }
        }
      else
        {
          printf("Got error %s when retreiving processlist\n",mysql_error(myData));
        }
      //....
      res = mysql_list_tables( myData, "%" ) ; l = 1 ;
      for ( x = 0 ; fd = mysql_fetch_field( res ) ; x++ )
        strcpy( aszFlds[ x ], fd->name ) ;
      while ( row = mysql_fetch_row( res ) ) {
        j = mysql_num_fields( res ) ;
        printf( "Table #%ld:-\n", l++ ) ;
        for ( k = 0 ; k < j ; k++ )
          printf( "  Fld #%d (%s): %s\n", k + 1, aszFlds[ k ],
          (((row[k]==NULL)||(!strlen(row[k])))?"NULL":row[k])) ;
        puts( "==============================\n" ) ;
      }
      //....
      pszT = mysql_stat( myData ) ;
      puts( pszT ) ;
      //....
      mysql_close( myData ) ;
      return 0 ;}
      

  4.   

    void CPowerServerDlg::LoadDevice()
    {
    SYSTEMTIME time;
    GetLocalTime(&time);
    _RecordsetPtr m_Recordset;
    _variant_t var;
    CString temp;
    ServerRunning = FALSE;
    ConnStr.Format("Provider=SQLOLEDB.1;SERVER=%s;DATABASE=PowerData;UID=%s;PWD=%s",IPstr,UserID,Pws);
    m_Connect.CreateInstance(__uuidof(Connection));
    m_Connect->Open(_bstr_t(ConnStr),"","",-1);
    try/*打开数据表*/
    {
    m_Recordset.CreateInstance(__uuidof(Recordset));
    m_Recordset->Open("Select * From Device where status='1'",m_Connect.GetInterfacePtr(),adOpenForwardOnly,adLockReadOnly,adCmdText);
    }catch(_com_error e)
    { AfxMessageBox("打开设备表失败,请检查数据库!"); return;}
    自已看看吧
      

  5.   

    你要改一下连接字符串,MySql我没试过不知道是什么字符串