List:Commits« Previous MessageNext Message »
From:pharvey Date:June 23 2006 6:54pm
Subject:Connector/ODBC 5 commit: r365 - in trunk: MYODBCC/include MYSQLPlus/MYSQLPlusLib MYSQLPlus/include
View as plain text  
Modified:
   trunk/MYODBCC/include/MYODBCC.h
   trunk/MYSQLPlus/MYSQLPlusLib/MConnection.cpp
   trunk/MYSQLPlus/include/MConnection.h
Log:
some work on SQLDriverConnect

Modified: trunk/MYODBCC/include/MYODBCC.h
===================================================================
--- trunk/MYODBCC/include/MYODBCC.h	2006-06-23 01:12:48 UTC (rev 364)
+++ trunk/MYODBCC/include/MYODBCC.h	2006-06-23 18:54:19 UTC (rev 365)
@@ -89,6 +89,21 @@
 #define min( a, b ) (((a) < (b)) ? (a) : (b))
 #endif
 
+/* library handling wrappers */
+#ifdef WIN32
+    #define MYODBC_C_DLL HMODULE 
+    #define MYODBCCInitLibrary() abs(0)
+    #define MYODBCCLoadLibrary(A) LoadLibrary(A)
+    #define MYODBCCFreeLibrary(A) FreeLibrary(A)
+    #define MYODBCCGetProcAddress(A,B) GetProcAddress(A,B)
+#else
+    #define MYODBC_C_DLL void * 
+    #define MYODBCCInitLibrary() lt_dlinit()
+    #define MYODBCCLoadLibrary(A) lt_dlopen(A)
+    #define MYODBCCFreeLibrary(A) lt_dlclose(A)
+    #define MYODBCCGetProcAddress(A,B) lt_dlsym(A,B)
+#endif
+
 /*!
     \brief  C API portability and convenience.
 

Modified: trunk/MYSQLPlus/MYSQLPlusLib/MConnection.cpp
===================================================================
--- trunk/MYSQLPlus/MYSQLPlusLib/MConnection.cpp	2006-06-23 01:12:48 UTC (rev 364)
+++ trunk/MYSQLPlus/MYSQLPlusLib/MConnection.cpp	2006-06-23 18:54:19 UTC (rev 365)
@@ -2931,7 +2931,37 @@
     MYODBCDbgReturn3( "%d", nTxnIsolation );
 }
 
+SQLRETURN MConnection::doConnect( MYODBCInsDriverConnect *pDriverConnect )
+{
+    MYODBCDbgEnter();
 
+    ulong nFlag = 0;
+
+    pDbc->pMySQL = mysql_init( NULL );
+
+    nFlag = MYODBCDrvGetClientFlag( pDbc->pMySQL, 
+                                    pDataSource->pszOPTION ? atol(
pDataSource->pszOPTION ) : 0, 
+                                    (uint)pDbc->attr_login_timeout, 
+                                    pDataSource->pszSTMT ? pDataSource->pszSTMT :
"" );
+
+    if ( !mysql_real_connect( pDbc->pMySQL,
+                              pDataSource->pszSERVER, 
+                              pDataSource->pszUSER,
+                              pDataSource->pszPASSWORD,
+                              pDataSource->pszDATABASE,
+                              atoi( pDataSource ->pszPORT ),
+                              pDataSource->pszSOCKET,
+                              nFlag ) )
+    {
+        MYODBCDiaAppend( pDbc->hDia, MYODBC_DIA_08001, mysql_errno( pDbc->pMySQL ),
(SQLCHAR*)mysql_error( pDbc->pMySQL ) );
+        mysql_close( pDbc->pMySQL );
+        pDbc->pMySQL    = NULL;
+        MYODBCDbgReturn( SQL_ERROR );
+    }
+
+    MYODBCDbgReturn( SQL_SUCCESS );
+}
+
 SQLRETURN MConnection::doSubmitCommand( const QString &stringCommand )
 {
     MYODBCDbgEnter();

Modified: trunk/MYSQLPlus/include/MConnection.h
===================================================================
--- trunk/MYSQLPlus/include/MConnection.h	2006-06-23 01:12:48 UTC (rev 364)
+++ trunk/MYSQLPlus/include/MConnection.h	2006-06-23 18:54:19 UTC (rev 365)
@@ -110,6 +110,7 @@
     qint32      getTxnIsolation();
 
     /* doers */
+    SQLRETURN   doConnect( MYODBCInsDriverConnect *pDriverConnect );
     SQLRETURN   doSubmitCommand( const QString &stringCommand );
     BOOLEAN     doServerAliveSanityCheck();
 

Thread
Connector/ODBC 5 commit: r365 - in trunk: MYODBCC/include MYSQLPlus/MYSQLPlusLib MYSQLPlus/includepharvey23 Jun