Hi,
        I am using the MySQL server and it's myodbc_mysql client programme.
When i connect to the local machine, it works perfectly. But i don't
know how do i connect to remote machine when using it in pure ODBC
fashion.

------------------------------------------

Available way is like follwing,

1. mysql -u root -h abc.xyz.com -p
( for interactive command line tool )
        or
2. real_connect( user, host, db, ..)
( for CAPI )

these works perfectly.
---------------------------------------------

I actually want something like following, and want to give remote host
name in this programme. Following programme by default contacts to
localhost:3306 and does the query. Depending upon some conditions i will
be switching the localhost name and remote host name. I found couple of
solutions in PHP, CAPI etc, but that doesn't suite my need.
----------------------------------------------
#include <stdio.h>
#include <string.h>
#include "isql.h"
#include "odbc_funcs.h"
#include "odbc_types.h"
#define MIB_DB_DSN       "blob_test"
#define MIB_DB_USER      "root"
#define MIB_DB_PASSWORD  "venkat"
#define TRUE 1
#define FALSE 0


SQLHDBC hdbc;
SQLHENV henv;

void displayError( SQLHENV hEnv, SQLHDBC hDbc, SQLHSTMT hStmt,
                   int iRC, int iLineNum
                 )
{
  SQLCHAR           szBuffer[ SQL_MAX_MESSAGE_LENGTH ];    /* msg.
buffer    */
  SQLCHAR           szSqlState[ SQL_SQLSTATE_SIZE ];       /* statement
buf. */
  SQLINTEGER        iSqlCode;                              /* return
code    */
  SQLSMALLINT       iLength;                               /* return
length  */

  fprintf( stderr, "-----------------------\n" );
  fprintf( stderr, "SQL error              : %d\n", iRC );
  fprintf( stderr, "line number            : %d\n", iLineNum );

  while( SQL_SUCCESS == SQLError( hEnv, hDbc, hStmt, szSqlState,
                                  &iSqlCode, szBuffer,
                                  SQL_MAX_MESSAGE_LENGTH - 1, &iLength
                                )
       )
  {
    fprintf( stderr, "SQL state              : %s\n", szSqlState );
    fprintf( stderr, "native error code      : %ld\n", iSqlCode );
    fprintf( stderr, "%s\n", szBuffer );
  } /* while */

  fprintf( stderr, "-----------------------\n" );

} /* displayError */



int
main( int argc, char* argv[] )
{
        SQLRETURN       nResult;
        SQLHSTMT        hstmt;

        if(SQLAllocEnv(&henv) != SQL_SUCCESS)
        {
                displayError( henv, hdbc, NULL, 0, __LINE__ );
      printf( "\nUnable to get the database handle");
                return FALSE;
        }


        if(SQLAllocConnect( henv, (SQLHDBC FAR *)&hdbc) != SQL_SUCCESS)
        {
                displayError( henv, hdbc, NULL, 0, __LINE__ );
      printf( "\nUnable to get the database handle" );
                return FALSE;
        }

        if((nResult = SQLConnect( hdbc,
                                        (unsigned char *)MIB_DB_DSN, SQL_NTS,
                                        (unsigned char *)MIB_DB_USER, SQL_NTS,
                                        (unsigned char *)MIB_DB_PASSWORD, SQL_NTS)) != 
SQL_SUCCESS)
        {
                displayError( henv, hdbc, NULL, 0, __LINE__ );
      printf( "\nUnable to connect to the database" );
                return FALSE;
        }

        
        SQLDisconnect(hdbc);

        SQLFreeConnect(hdbc);
        SQLFreeEnv(henv);


        exit(0);

} /* end, main() */


-----------------------------------------------

Thaning you for speedier reponse,
with regards,
-peri
---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to