List:Commits« Previous MessageNext Message »
From:pharvey Date:May 16 2006 8:55pm
Subject:Connector/ODBC 5 commit: r247 - MYSQLPlus/MYSQLPlusLib
View as plain text  
Modified:
   MYSQLPlus/MYSQLPlusLib/MResult.cpp
   MYSQLPlus/MYSQLPlusLib/MResult.h
   MYSQLPlus/MYSQLPlusLib/MStatement.cpp
Log:


Modified: MYSQLPlus/MYSQLPlusLib/MResult.cpp
===================================================================
--- MYSQLPlus/MYSQLPlusLib/MResult.cpp	2006-05-16 18:42:41 UTC (rev 246)
+++ MYSQLPlus/MYSQLPlusLib/MResult.cpp	2006-05-16 20:55:09 UTC (rev 247)
@@ -78,15 +78,18 @@
     \internal
     \brief          Gets a columns data from the current row in the result set.
 
-                    This method has been created to implement most (if not all) of
SQLGetData() functionality. In
-                    fact; it takes all the same/similar arguments and returns the same
return values/states.
+                    The primary purpose of this method is to support
MStatement::getData() which, in turn, can be used
+                    to support SQLGetData().
 
+                    This means that we are getting data defined by SQL type to a C buffer
defined by C type. Data conversion
+                    will take place as needed and in accordance with the ODBC
specification.
+
     \param nColumnNumber    The desired column number as per SQLGetData().
     \param nTargetType      The desired C data type for pTargetValue as per SQLGetData().
     \param pTargetValue     A viable buffer where we can put the column value as per
SQLGetData().
     \param nBufferLength    The size of the buffer at pTargetValue as per SQLGetData().
-    \param pnLength         The number of bytes available in column as per SQLGetData().
-    \param pnIndicator      A buffer to be used to indicate whether or not the column is
NULL as per SQLGetData().
+    \param pnLength         The number of bytes or chars available in column as per
StrLenInd of SQLGetData().
+    \param pnIndicator      A buffer to be used to indicate whether or not the column is
NULL as per StrLenInd of SQLGetData().
 
     \return SQLRETURN
 
@@ -118,6 +121,10 @@
 
     if ( pnIndicator ) *pnIndicator = 0;
 
+    /* validate column number */
+    if ( nColumnNumber > getImpRowDesc()->getCount() )
+        MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_07009 ) );
+
     /* get data and data length, convert data as needed */
     switch ( nTargetType )
     {
@@ -138,8 +145,6 @@
                 if ( nColumnNumber > getAppRowDesc()->getCount() )
                     MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_07009
) );
 
-                MDescriptorRecord *pDescriptorRecordARD = getAppRowDesc()->getRecord(
nColumnNumber );
-
                 /*!
                     \internal ODBC RULE (I think)
 
@@ -157,6 +162,8 @@
 
                     http://support.microsoft.com/default.aspx?scid=kb;en-us;222831
                 */
+                MDescriptorRecord *pDescriptorRecordARD = getAppRowDesc()->getRecord(
nColumnNumber );
+
                 if ( pDescriptorRecordARD->getConciseType() == SQL_C_NUMERIC )
                 {
                     /*!
@@ -178,7 +185,8 @@
                     MYODBCDbgReturn( getData( variantData, pNumeric, pnLength ) );
                 }
 
-                MYODBCDbgReturn( getData( nColumnNumber,
pDescriptorRecordARD->getConciseType(), pTargetValue, nBufferLength, pnLength,
pnIndicator, pDescriptorRecord ) );
+                /* try again - call ourself with the type */
+                MYODBCDbgReturn( getData( nColumnNumber,
pDescriptorRecordARD->getConciseType(), pTargetValue, nBufferLength, pnLength,
pnIndicator ) );
             }
             break;
 
@@ -187,13 +195,13 @@
 
             If it is SQL_C_DEFAULT, the driver selects the default C data type based on
the SQL 
             data type of the source.        
+
+            \note
+
+            The logic for selecting the C data type is spelled out in the ODBC
specification.
         */
         case SQL_C_DEFAULT:
-            {
-                MDescriptorRecordIRD *pDescriptorRecord = getImpRowDesc()->getRecord(
nColumnNumber );
-                MYODBCDbgReturn( getData( SQLUSMALLINT nColumnNumber, pDescriptorRecord,
SQLPOINTER pTargetValue, SQLINTEGER nBufferLength, SQLINTEGER *pnLength, SQLINTEGER
*pnIndicator ) );
-            }
-            break;
+            MYODBCDbgReturn( getData( nColumnNumber,
(MDescriptorRecordIRD*)getImpRowDesc()->getRecord( nColumnNumber ), pTargetValue,
nBufferLength, pnLength, pnIndicator ) );
 
         case SQL_C_CHAR:
         case SQL_C_WCHAR:
@@ -203,52 +211,52 @@
 
                 Differentiate between char and wide-char.
             */
-            MYODBCDbgReturn( getData( variantData, (SQLWCHAR *)pTargetValue,
nBufferLength * sizeof(SQLWCHAR), SQLINTEGER pnLength ) );
+            MYODBCDbgReturn( getData( getImpRowDesc()->getConciseType(), variantData,
(SQLWCHAR *)pTargetValue, nBufferLength * sizeof(SQLWCHAR), SQLINTEGER pnLength ) );
 
         case SQL_C_SSHORT:
-            MYODBCDbgReturn( getData( variantData, (short int *)pTargetValue, pnLength )
);
+            MYODBCDbgReturn( getData( getImpRowDesc()->getConciseType(), variantData,
(short int *)pTargetValue, pnLength ) );
 
         case SQL_C_USHORT:            
-            MYODBCDbgReturn( getData( variantData, (unsigned short int *)pTargetValue,
pnLength ) );
+            MYODBCDbgReturn( getData( getImpRowDesc()->getConciseType(), variantData,
(unsigned short int *)pTargetValue, pnLength ) );
 
         case SQL_C_SLONG:
-            MYODBCDbgReturn( getData( variantData, (long int *)pTargetValue, pnLength )
);
+            MYODBCDbgReturn( getData( getImpRowDesc()->getConciseType(), variantData,
(long int *)pTargetValue, pnLength ) );
 
         case SQL_C_ULONG:
-            MYODBCDbgReturn( getData( variantData, (unsigned long int *)pTargetValue,
pnLength ) );
+            MYODBCDbgReturn( getData( getImpRowDesc()->getConciseType(), variantData,
(unsigned long int *)pTargetValue, pnLength ) );
 
         case SQL_C_FLOAT:
-            MYODBCDbgReturn( getData( variantData, (float *)pTargetValue, pnLength ) );
+            MYODBCDbgReturn( getData( getImpRowDesc()->getConciseType(), variantData,
(float *)pTargetValue, pnLength ) );
 
         case SQL_C_DOUBLE:
-            MYODBCDbgReturn( getData( variantData, (double *)pTargetValue, pnLength ) );
+            MYODBCDbgReturn( getData( getImpRowDesc()->getConciseType(), variantData,
(double *)pTargetValue, pnLength ) );
 
         case SQL_C_BIT:
-            MYODBCDbgReturn( getData( variantData, (unsigned char *)pTargetValue,
pnLength ) );
+            MYODBCDbgReturn( getData( getImpRowDesc()->getConciseType(), variantData,
(unsigned char *)pTargetValue, pnLength ) );
 
         case SQL_C_STINYINT:
-            MYODBCDbgReturn( getData( variantData, (char *)pTargetValue, pnLength ) );
+            MYODBCDbgReturn( getData( getImpRowDesc()->getConciseType(), variantData,
(char *)pTargetValue, pnLength ) );
 
         case SQL_C_UTINYINT:
-            MYODBCDbgReturn( getData( variantData, (unsigned char *)pTargetValue,
pnLength ) );
+            MYODBCDbgReturn( getData( getImpRowDesc()->getConciseType(), variantData,
(unsigned char *)pTargetValue, pnLength ) );
 
         case SQL_C_SBIGINT:
-            MYODBCDbgReturn( getData( variantData, (qint64 *)pTargetValue, pnLength ) );
+            MYODBCDbgReturn( getData( getImpRowDesc()->getConciseType(), variantData,
(qint64 *)pTargetValue, pnLength ) );
 
         case SQL_C_UBIGINT:
-            MYODBCDbgReturn( getData( variantData, (quint64 *)pTargetValue, pnLength ) );
+            MYODBCDbgReturn( getData( getImpRowDesc()->getConciseType(), variantData,
(quint64 *)pTargetValue, pnLength ) );
 
         case SQL_C_BINARY:
-            MYODBCDbgReturn( getData( variantData, pTargetValue, nBufferLength, pnLength
) );
+            MYODBCDbgReturn( getData( getImpRowDesc()->getConciseType(), variantData,
pTargetValue, nBufferLength, pnLength ) );
 
         case SQL_C_TYPE_DATE:
-            MYODBCDbgReturn( getData( variantData, (SQL_DATE_STRUCT *)pTargetValue,
pnLength ) );
+            MYODBCDbgReturn( getData( getImpRowDesc()->getConciseType(), variantData,
(SQL_DATE_STRUCT *)pTargetValue, pnLength ) );
 
         case SQL_C_TYPE_TIME:
-            MYODBCDbgReturn( getData( variantData, (SQL_TIME_STRUCT *)pTargetValue,
pnLength ) );
+            MYODBCDbgReturn( getData( getImpRowDesc()->getConciseType(), variantData,
(SQL_TIME_STRUCT *)pTargetValue, pnLength ) );
 
         case SQL_C_TYPE_TIMESTAMP:
-            MYODBCDbgReturn( getData( variantData, (SQL_TIMESTAMP_STRUCT *)pTargetValue,
pnLength ) );
+            MYODBCDbgReturn( getData( getImpRowDesc()->getConciseType(), variantData,
(SQL_TIMESTAMP_STRUCT *)pTargetValue, pnLength ) );
 
         case SQL_C_NUMERIC:
             {
@@ -270,7 +278,7 @@
                 pNumeric->precision = 10;   /* default precision    */
                 pNumeric->scale     = 0;    /* default scale        */
 
-                MYODBCDbgReturn( getData( variantData, pNumeric, pnLength ) );
+                MYODBCDbgReturn( getData( getImpRowDesc()->getConciseType(),
variantData, pNumeric, pnLength ) );
             }
             break;
 
@@ -590,7 +598,7 @@
     MYODBCDbgReturn( SQL_SUCCESS );
 }
 
-SQLRETURN MResult::getData( const QVariant &variantData, SQLWCHAR *psTarget,
SQLINTEGER nCharsMax, SQLINTEGER *nCharsAvailable )
+SQLRETURN MResult::getData( SQLSMALLINT nConciseTypeSQL, const QVariant &variantData,
SQLWCHAR *psTarget, SQLINTEGER nCharsMax, SQLINTEGER *nCharsAvailable )
 {
     MYODBCDbgEnter();
 
@@ -603,7 +611,7 @@
     MYODBCDbgReturn( SQL_SUCCESS );
 }
 
-SQLRETURN MResult::getData( const QVariant &variantData, short int *pnTarget,
SQLINTEGER *pnLength );
+SQLRETURN MResult::getData( SQLSMALLINT nConciseTypeSQL, const QVariant &variantData,
short int *pnTarget, SQLINTEGER *pnLength );
 {
     MYODBCDbgEnter();
 
@@ -615,7 +623,7 @@
     MYODBCDbgReturn( SQL_SUCCESS );
 }
 
-SQLRETURN MResult::getData( const QVariant &variantData, unsigned short int
*pnTarget, SQLINTEGER *pnLength );
+SQLRETURN MResult::getData( SQLSMALLINT nConciseTypeSQL, const QVariant &variantData,
unsigned short int *pnTarget, SQLINTEGER *pnLength );
 {
     MYODBCDbgEnter();
 
@@ -627,7 +635,7 @@
     MYODBCDbgReturn( SQL_SUCCESS );
 }
 
-SQLRETURN MResult::getData( const QVariant &variantData, long int *pnTarget,
SQLINTEGER *pnLength );
+SQLRETURN MResult::getData( SQLSMALLINT nConciseTypeSQL, const QVariant &variantData,
long int *pnTarget, SQLINTEGER *pnLength );
 {
     MYODBCDbgEnter();
 
@@ -639,7 +647,7 @@
     MYODBCDbgReturn( SQL_SUCCESS );
 }
 
-SQLRETURN MResult::getData( const QVariant &variantData, unsigned long int *pnTarget,
SQLINTEGER *pnLength );
+SQLRETURN MResult::getData( SQLSMALLINT nConciseTypeSQL, const QVariant &variantData,
unsigned long int *pnTarget, SQLINTEGER *pnLength );
 {
     MYODBCDbgEnter();
 
@@ -651,7 +659,7 @@
     MYODBCDbgReturn( SQL_SUCCESS );
 }
 
-SQLRETURN MResult::getData( const QVariant &variantData, float *pnTarget, SQLINTEGER
*pnLength );
+SQLRETURN MResult::getData( SQLSMALLINT nConciseTypeSQL, const QVariant &variantData,
float *pnTarget, SQLINTEGER *pnLength );
 {
     MYODBCDbgEnter();
 
@@ -663,7 +671,7 @@
     MYODBCDbgReturn( SQL_SUCCESS );
 }
 
-SQLRETURN MResult::getData( const QVariant &variantData, double *pnTarget, SQLINTEGER
*pnLength );
+SQLRETURN MResult::getData( SQLSMALLINT nConciseTypeSQL, const QVariant &variantData,
double *pnTarget, SQLINTEGER *pnLength );
 {
     MYODBCDbgEnter();
 
@@ -675,7 +683,7 @@
     MYODBCDbgReturn( SQL_SUCCESS );
 }
 
-SQLRETURN MResult::getData( const QVariant &variantData, char *pnTarget, SQLINTEGER
*pnLength );
+SQLRETURN MResult::getData( SQLSMALLINT nConciseTypeSQL, const QVariant &variantData,
char *pnTarget, SQLINTEGER *pnLength );
 {
     MYODBCDbgEnter();
 
@@ -687,7 +695,7 @@
     MYODBCDbgReturn( SQL_SUCCESS );
 }
 
-SQLRETURN MResult::getData( const QVariant &variantData, unsigned char *pnTarget,
SQLINTEGER *pnLength );
+SQLRETURN MResult::getData( SQLSMALLINT nConciseTypeSQL, const QVariant &variantData,
unsigned char *pnTarget, SQLINTEGER *pnLength );
 {
     MYODBCDbgEnter();
 
@@ -699,7 +707,7 @@
     MYODBCDbgReturn( SQL_SUCCESS );
 }
 
-SQLRETURN MResult::getData( const QVariant &variantData, qint64 *pnTarget, SQLINTEGER
*pnLength );
+SQLRETURN MResult::getData( SQLSMALLINT nConciseTypeSQL, const QVariant &variantData,
qint64 *pnTarget, SQLINTEGER *pnLength );
 {
     MYODBCDbgEnter();
 
@@ -711,7 +719,7 @@
     MYODBCDbgReturn( SQL_SUCCESS );
 }
 
-SQLRETURN MResult::getData( const QVariant &variantData, quint64 *pnTarget,
SQLINTEGER *pnLength );
+SQLRETURN MResult::getData( SQLSMALLINT nConciseTypeSQL, const QVariant &variantData,
quint64 *pnTarget, SQLINTEGER *pnLength );
 {
     MYODBCDbgEnter();
 
@@ -723,7 +731,7 @@
     MYODBCDbgReturn( SQL_SUCCESS );
 }
 
-SQLRETURN MResult::getData( const QVariant &variantData, SQLPOINTER pTarget,
SQLINTEGER nBytesMax, SQLINTEGER *pnBytesAvailable );
+SQLRETURN MResult::getData( SQLSMALLINT nConciseTypeSQL, const QVariant &variantData,
SQLPOINTER pTarget, SQLINTEGER nBytesMax, SQLINTEGER *pnBytesAvailable );
 {
     MYODBCDbgEnter();
 
@@ -735,7 +743,7 @@
     MYODBCDbgReturn( SQL_SUCCESS );
 }
 
-SQLRETURN MResult::getData( const QVariant &variantData, SQL_DATE_STRUCT *pTarget,
SQLINTEGER *pnLength );
+SQLRETURN MResult::getData( SQLSMALLINT nConciseTypeSQL, const QVariant &variantData,
SQL_DATE_STRUCT *pTarget, SQLINTEGER *pnLength );
 {
     MYODBCDbgEnter();
 
@@ -750,7 +758,7 @@
     MYODBCDbgReturn( SQL_SUCCESS );
 }
 
-SQLRETURN MResult::getData( const QVariant &variantData, SQL_TIME_STRUCT *pTarget,
SQLINTEGER *pnLength );
+SQLRETURN MResult::getData( SQLSMALLINT nConciseTypeSQL, const QVariant &variantData,
SQL_TIME_STRUCT *pTarget, SQLINTEGER *pnLength );
 {
     MYODBCDbgEnter();
 
@@ -765,7 +773,7 @@
     MYODBCDbgReturn( SQL_SUCCESS );
 }
 
-SQLRETURN MResult::getData( const QVariant &variantData, SQL_TIMESTAMP_STRUCT
*pTarget, SQLINTEGER *pnLength );
+SQLRETURN MResult::getData( SQLSMALLINT nConciseTypeSQL, const QVariant &variantData,
SQL_TIMESTAMP_STRUCT *pTarget, SQLINTEGER *pnLength );
 {
     MYODBCDbgEnter();
 
@@ -797,14 +805,14 @@
                     which govern this.
 
     \param variantData  Source data.
-    \param pTarget      Pointer to a SQL_NUMERIC_STRUCT.
+    \param pTarget      Pointer to a SQL_NUMERIC_STRUCT. The precision and scale fields
must be valid values.
     \param pnLength     Buffer where we can set the length (number of bytes) we have
available.
 
     \return SQLRETURN
 
     \sa getData()
 */
-SQLRETURN MResult::getData( const QVariant &variantData, SQL_NUMERIC_STRUCT *pTarget,
SQLINTEGER *pnLength );
+SQLRETURN MResult::getData( SQLSMALLINT nConciseTypeSQL, const QVariant &variantData,
SQL_NUMERIC_STRUCT *pTarget, SQLINTEGER *pnLength );
 {
     MYODBCDbgEnter();
 

Modified: MYSQLPlus/MYSQLPlusLib/MResult.h
===================================================================
--- MYSQLPlus/MYSQLPlusLib/MResult.h	2006-05-16 18:42:41 UTC (rev 246)
+++ MYSQLPlus/MYSQLPlusLib/MResult.h	2006-05-16 20:55:09 UTC (rev 247)
@@ -69,7 +69,7 @@
     virtual BOOLEAN isValidColumn( uint nColumn );
     virtual BOOLEAN isValidRow() = 0;
     virtual BOOLEAN isValidRow( qulonglong nRow ) = 0;
-    BOOLEAN isBuffered();
+    BOOLEAN         isBuffered();
     virtual BOOLEAN isDirty() = 0;
 
 protected:
@@ -89,22 +89,22 @@
     SQLRETURN       getData( SQLUSMALLINT nColumn, MDescriptorRecordARD
*pDescriptorRecord );
     SQLRETURN       getData( SQLUSMALLINT nColumn, MDescriptorRecordIRD
*pDescriptorRecord, SQLPOINTER pTargetValue, SQLINTEGER nBufferLength, SQLINTEGER
*pnLength, SQLINTEGER *pnIndicator );
 
-    SQLRETURN       getData( const QVariant &variantData, SQLWCHAR *psTarget,
SQLINTEGER nCharsMax, SQLINTEGER *nCharsAvailable );
-    SQLRETURN       getData( const QVariant &variantData, short int *pnTarget,
SQLINTEGER *pnLength );
-    SQLRETURN       getData( const QVariant &variantData, unsigned short int
*pnTarget, SQLINTEGER *pnLength );
-    SQLRETURN       getData( const QVariant &variantData, long int *pnTarget,
SQLINTEGER *pnLength );
-    SQLRETURN       getData( const QVariant &variantData, unsigned long int
*pnTarget, SQLINTEGER *pnLength );
-    SQLRETURN       getData( const QVariant &variantData, float *pnTarget, SQLINTEGER
*pnLength );
-    SQLRETURN       getData( const QVariant &variantData, double *pnTarget,
SQLINTEGER *pnLength );
-    SQLRETURN       getData( const QVariant &variantData, char *pnTarget, SQLINTEGER
*pnLength );
-    SQLRETURN       getData( const QVariant &variantData, unsigned char *pnTarget,
SQLINTEGER *pnLength );
-    SQLRETURN       getData( const QVariant &variantData, qint64 *pnTarget,
SQLINTEGER *pnLength );
-    SQLRETURN       getData( const QVariant &variantData, quint64 *pnTarget,
SQLINTEGER *pnLength );
-    SQLRETURN       getData( const QVariant &variantData, SQLPOINTER pTarget,
SQLINTEGER nBytesMax, SQLINTEGER *pnBytesAvailable );
-    SQLRETURN       getData( const QVariant &variantData, SQL_DATE_STRUCT *pTarget,
SQLINTEGER *pnLength );
-    SQLRETURN       getData( const QVariant &variantData, SQL_TIME_STRUCT *pTarget,
SQLINTEGER *pnLength );
-    SQLRETURN       getData( const QVariant &variantData, SQL_TIMESTAMP_STRUCT
*pTarget, SQLINTEGER *pnLength );
-    SQLRETURN       getData( const QVariant &variantData, SQL_NUMERIC_STRUCT
*pTarget, SQLINTEGER *pnLength );
+    SQLRETURN       getData( SQLSMALLINT nConciseTypeSQL, const QVariant
&variantData, SQLWCHAR *psTarget, SQLINTEGER nCharsMax, SQLINTEGER *nCharsAvailable
);
+    SQLRETURN       getData( SQLSMALLINT nConciseTypeSQL, const QVariant
&variantData, short int *pnTarget, SQLINTEGER *pnLength );
+    SQLRETURN       getData( SQLSMALLINT nConciseTypeSQL, const QVariant
&variantData, unsigned short int *pnTarget, SQLINTEGER *pnLength );
+    SQLRETURN       getData( SQLSMALLINT nConciseTypeSQL, const QVariant
&variantData, long int *pnTarget, SQLINTEGER *pnLength );
+    SQLRETURN       getData( SQLSMALLINT nConciseTypeSQL, const QVariant
&variantData, unsigned long int *pnTarget, SQLINTEGER *pnLength );
+    SQLRETURN       getData( SQLSMALLINT nConciseTypeSQL, const QVariant
&variantData, float *pnTarget, SQLINTEGER *pnLength );
+    SQLRETURN       getData( SQLSMALLINT nConciseTypeSQL, const QVariant
&variantData, double *pnTarget, SQLINTEGER *pnLength );
+    SQLRETURN       getData( SQLSMALLINT nConciseTypeSQL, const QVariant
&variantData, char *pnTarget, SQLINTEGER *pnLength );
+    SQLRETURN       getData( SQLSMALLINT nConciseTypeSQL, const QVariant
&variantData, unsigned char *pnTarget, SQLINTEGER *pnLength );
+    SQLRETURN       getData( SQLSMALLINT nConciseTypeSQL, const QVariant
&variantData, qint64 *pnTarget, SQLINTEGER *pnLength );
+    SQLRETURN       getData( SQLSMALLINT nConciseTypeSQL, const QVariant
&variantData, quint64 *pnTarget, SQLINTEGER *pnLength );
+    SQLRETURN       getData( SQLSMALLINT nConciseTypeSQL, const QVariant
&variantData, SQLPOINTER pTarget, SQLINTEGER nBytesMax, SQLINTEGER *pnBytesAvailable
);
+    SQLRETURN       getData( SQLSMALLINT nConciseTypeSQL, const QVariant
&variantData, SQL_DATE_STRUCT *pTarget, SQLINTEGER *pnLength );
+    SQLRETURN       getData( SQLSMALLINT nConciseTypeSQL, const QVariant
&variantData, SQL_TIME_STRUCT *pTarget, SQLINTEGER *pnLength );
+    SQLRETURN       getData( SQLSMALLINT nConciseTypeSQL, const QVariant
&variantData, SQL_TIMESTAMP_STRUCT *pTarget, SQLINTEGER *pnLength );
+    SQLRETURN       getData( SQLSMALLINT nConciseTypeSQL, const QVariant
&variantData, SQL_NUMERIC_STRUCT *pTarget, SQLINTEGER *pnLength );
 
     /* doers */
     virtual SQLRETURN doStateRollBack( STATE nState ) = 0;

Modified: MYSQLPlus/MYSQLPlusLib/MStatement.cpp
===================================================================
--- MYSQLPlus/MYSQLPlusLib/MStatement.cpp	2006-05-16 18:42:41 UTC (rev 246)
+++ MYSQLPlus/MYSQLPlusLib/MStatement.cpp	2006-05-16 20:55:09 UTC (rev 247)
@@ -430,7 +430,7 @@
     /* get data */
     SQLINTEGER  nLength;
     SQLINTEGER  nIndicator;
-    SQLRETURN   nReturn = pResult->getData( nColumnNumber, nTargetType, pTargetValue,
nBufferLength, &nLength, &nIndicator, getImpRowDesc()->getRecord(
nColumnNumber ) );
+    SQLRETURN   nReturn = pResult->getData( nColumnNumber, nTargetType, pTargetValue,
nBufferLength, &nLength, &nIndicator );
 
     if ( !SQL_SUCCEEDED(nReturn) )
         MYODBCDbgReturn( nReturn );

Thread
Connector/ODBC 5 commit: r247 - MYSQLPlus/MYSQLPlusLibpharvey16 May