Modified:
trunk/SDK/MYSQLPlus/Library/Library.pro
trunk/SDK/MYSQLPlus/Library/MDescriptorRecord.h
trunk/SDK/MYSQLPlus/Library/MDiagnostic.h
trunk/SDK/MYSQLPlus/Library/MInternal.h
trunk/SDK/MYSQLPlus/Library/MResultRes.cpp
trunk/SDK/MYSQLPlus/Library/MResultRes.h
trunk/SDK/MYSQLPlus/Library/MStatement.cpp
trunk/SDK/MYSQLPlus/include/MConnection.h
trunk/SDK/MYSQLPlus/include/MDescriptor.h
trunk/SDK/MYSQLPlus/include/MEnvironment.h
trunk/SDK/MYSQLPlus/include/MStatement.h
Log:
- make various ResultSet types optional at build-time so as to get compiler/linker into
action sooner during wide-spread changes
Modified: trunk/SDK/MYSQLPlus/Library/Library.pro
===================================================================
--- trunk/SDK/MYSQLPlus/Library/Library.pro 2006-09-09 22:07:39 UTC (rev 532)
+++ trunk/SDK/MYSQLPlus/Library/Library.pro 2006-09-10 21:43:22 UTC (rev 533)
@@ -7,7 +7,8 @@
include( ../../../common.pri )
include( ../../../config.pri )
include( ../../../defines.pri )
-CONFIG += staticlib
+CONFIG += staticlib ResultPlus
+# CONFIG += staticlib ResultPlus ResultRes ResultStmt
INCLUDEPATH += ../../C/include
INCLUDEPATH += ../../Dbg/include
INCLUDEPATH += ../../Installer/include
@@ -27,9 +28,6 @@
MCommand.h \
MCommands.h \
MResult.h \
- MResultPlus.h \
- MResultRes.h \
- MResultStmt.h \
MDescriptorAPD.h \
MDescriptorARD.h \
MDescriptorIPD.h \
@@ -42,7 +40,7 @@
MDiagnostic.h \
MDiagnosticRecord.h \
MInternal.h
-
+
SOURCES = \
MCommand.cpp \
MCommands.cpp \
@@ -51,9 +49,6 @@
MStatement.cpp \
MDescriptor.cpp \
MResult.cpp \
- MResultPlus.cpp \
- MResultRes.cpp \
- MResultStmt.cpp \
MDescriptorAPD.cpp \
MDescriptorARD.cpp \
MDescriptorIPD.cpp \
@@ -66,3 +61,22 @@
MDiagnostic.cpp \
MDiagnosticRecord.cpp
+ResultPlus {
+ DEFINES += RESULTPLUS
+ HEADERS += MResultPlus.h
+ SOURCES += MResultPlus.cpp
+}
+
+ResultRes {
+ DEFINES += RESULTRES
+ HEADERS += MResultRes.h
+ SOURCES += MResultRes.cpp
+}
+
+ResultStmt {
+ DEFINES += RESULTSTMT
+ HEADERS += MResultStmt.h
+ SOURCES += MResultStmt.cpp
+}
+
+
Modified: trunk/SDK/MYSQLPlus/Library/MDescriptorRecord.h
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MDescriptorRecord.h 2006-09-09 22:07:39 UTC (rev 532)
+++ trunk/SDK/MYSQLPlus/Library/MDescriptorRecord.h 2006-09-10 21:43:22 UTC (rev 533)
@@ -33,9 +33,15 @@
friend class MStatement;
friend class MDescriptor;
friend class MResult;
+#ifdef RESULTPLUS
friend class MResultPlus;
+#endif
+#ifdef RESULTRES
friend class MResultRes;
+#endif
+#ifdef RESULTSTMT
friend class MResultStmt;
+#endif
public:
MDescriptorRecord( MDescriptor *pDescriptor );
~MDescriptorRecord();
Modified: trunk/SDK/MYSQLPlus/Library/MDiagnostic.h
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MDiagnostic.h 2006-09-09 22:07:39 UTC (rev 532)
+++ trunk/SDK/MYSQLPlus/Library/MDiagnostic.h 2006-09-10 21:43:22 UTC (rev 533)
@@ -67,9 +67,15 @@
friend class MConnection;
friend class MStatement;
friend class MResult;
+#ifdef RESULTPLUS
friend class MResultPlus;
+#endif
+#ifdef RESULTRES
friend class MResultRes;
+#endif
+#ifdef RESULTSTMT
friend class MResultStmt;
+#endif
friend class MDiagnosticRecord;
friend QTextStream &operator<<( QTextStream &stream, const MDiagnostic
&rval );
Modified: trunk/SDK/MYSQLPlus/Library/MInternal.h
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MInternal.h 2006-09-09 22:07:39 UTC (rev 532)
+++ trunk/SDK/MYSQLPlus/Library/MInternal.h 2006-09-10 21:43:22 UTC (rev 533)
@@ -12,9 +12,15 @@
class MCommands;
class MCommand;
class MResult;
+#ifdef RESULTPLUS
class MResultPlus;
+#endif
+#ifdef RESULTRES
class MResultRes;
+#endif
+#ifdef RESULTSTMT
class MResultStmt;
+#endif
class MDiagnostic;
class MDiagnosticRecord;
class MDescriptorAPD;
@@ -45,9 +51,15 @@
#include "MDescriptorRecordIPD.h"
#include "MDescriptorRecordIRD.h"
#include "MResult.h"
-#include "MResultPlus.h"
-#include "MResultRes.h"
-#include "MResultStmt.h"
+#ifdef RESULTPLUS
+ #include "MResultPlus.h"
+#endif
+#ifdef RESULTRES
+ #include "MResultRes.h"
+#endif
+#ifdef RESULTSTMT
+ #include "MResultStmt.h"
+#endif
#endif
Modified: trunk/SDK/MYSQLPlus/Library/MResultRes.cpp
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MResultRes.cpp 2006-09-09 22:07:39 UTC (rev 532)
+++ trunk/SDK/MYSQLPlus/Library/MResultRes.cpp 2006-09-10 21:43:22 UTC (rev 533)
@@ -117,58 +117,11 @@
MYODBCDbgReturn( SQL_SUCCESS );
}
-+++++++++
-
-
-
/*!
- \brief Use this to get the number of rows in the result-set.
-
- This will get the number of rows in the result-set. nRow is
- 1-based so nRows is a valid row. This is because we use 0 to indicate
- that we are 'before the first row' (something like BOF/EOF).
-
- \param pnRows Reference to storage for the number of rows.
-
- \return SQLRETURN
-
- \sa getColumns
- getRow
-*/
-SQLRETURN MResultRes::getRows( qulonglong *pnRows )
-{
- MYODBCDbgEnter();
-
- if ( getState() < STATE_EXECUTED )
- MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_HY010 ) );
-
- if ( !isBuffered() )
- MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_HY000, 0,
tr("getRows() not supported for unbuffered resultset") ) );
-
- Q_ASSERT( pnRows );
-
- /*!
- \internal MYSQL RULE
-
- mysql_num_rows() returns number of rows (0-n) and generates no
- errors.
-
- \note
-
- We try to report error anyway ;)
- */
- *pnRows = mysql_num_rows( pRes );
- if ( mysql_errno( getMySQL() ) )
- MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_HY000,
mysql_errno( getMySQL() ), mysql_error( getMySQL() ) ) );
-
- MYODBCDbgReturn( SQL_SUCCESS );
-}
-
-/*!
\brief Use this to append a new, blank, row.
- This will append a new blank row at the end of the result-set and make it the
- current row.
+ This will append a new blank row at the end of the RowSet and make it the
+ RowSetRow.
\todo Implement MResultRes::doAppend (if needed).
@@ -217,14 +170,27 @@
MYODBCDbgReturn( SQL_SUCCESS );
}
+SQLRETURN MResultRes::doCommit()
+{
+ MYODBCDbgEnter();
+
+ /*!
+ \internal
+ \todo
+
+ Implement.
+
+ \sa MResultStmt::doCommit
+ */
+
+ MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_HY000, 0,
tr("doCommit() not supported in this context") ) );
+}
+
/*!
\brief Use this to delete the current row.
- This causes a DELETE statement to be sent to the server and, if successful,
- causes the row to be marked as deleted.
+ \todo Implement MResultRes::doDelete.
- \todo Implement MResultRes::doDelete (if needed).
-
\return SQLRETURN
\sa doAppend
@@ -252,15 +218,8 @@
This will execute the prepared statement. A prepared statement must exist and
all
required parameters must have been supplied.
- The current row will be before the 1st row.
+ ResultSetRow will be before the 1st row.
- \todo Add buffered/unbuffered option for MResultRes::doExecute. For now just use
- buffered as it enables more features. Currently; many assumptions based upon
us
- using buffered such as;
- - our ability to do more than just scroll-forward
- - for us to know the number of rows in the result-set
- - for us to know the max-length of a columns data
-
\return SQLRETURN
\sa doPrepare
@@ -381,12 +340,13 @@
{
case BUFFERED_UNBUFFERED:
case BUFFERED_MYSQL_PLUS:
- pRes = mysql_use_result( getMySQL() );
+ pRes = mysql_use_result( getMySQL() ); // bring rows to client as needed
break;
case BUFFERED_MYSQL_CLIENT:
- pRes = mysql_store_result( getMySQL() );
+ pRes = mysql_store_result( getMySQL() ); // bring all rows to client now
break;
default:
+ MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_HY000, 0,
tr("Unknown buffer type.") ) );
}
if ( (!pRes && mysql_field_count( getMySQL() )) || mysql_errno( getMySQL() )
)
@@ -427,10 +387,25 @@
*/
if ( pCommand->isResultSetPossible() )
{
- qulonglong nRows = -1;
- if ( !SQL_SUCCEEDED( getRows( &nRows ) ) )
- nRows = -1;
+ qulonglong nRows = 0;
+ if ( getBuffered() == BUFFERED_MYSQL_CLIENT )
+ {
+ /*!
+ \internal MYSQL RULE
+
+ mysql_num_rows() returns number of rows (0-n) and generates no
+ errors.
+
+ \note
+
+ We try to report error anyway ;)
+ */
+ nRows = mysql_num_rows( pRes );
+ if ( mysql_errno( getMySQL() ) )
+ MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_HY000,
mysql_errno( getMySQL() ), mysql_error( getMySQL() ) ) );
+ }
+
getDiagnostic()->setCursorRowCount( nRows );
getDiagnostic()->setRowCount( nRows );
setRowsAffected( nRows );
@@ -448,41 +423,73 @@
}
/*!
- \brief Make the 1st row in the result-set the current row.
+ \brief Prepares the provided statement.
- This will make the 1st row in the result-set the current row.
- If no rows exist the current row will be invalid and SQL_NO_DATA will be
- returned.
+ This is called to get the server to prepare the statement and to load the
result-set meta-data
+ into the IRD but in a MYSQL_RES based result-set we do not have any real
ability to get meta-data
+ until after we execute so this call does not do too much.
- The row data will be refreshed and any bound columns will be updated.
-
+ \param command Command we are supporting.
+
\return SQLRETURN
- \sa setRow
- getRow
- getRows
- doNext
- doPrev
- doFirst
- doLast
- doSkip
+ \sa doExecute
*/
-SQLRETURN MResultRes::doFirst()
+SQLRETURN MResultRes::doPrepare( MCommand *pCommand )
{
MYODBCDbgEnter();
+ if ( getState() != STATE_INITIALIZED ) /* should call doClear() first */
+ MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_HY010 ) );
+
/*!
\internal
\todo
- Implement.
-
- \sa MResultStmt::doFirst
+ We may want to append LIMIT to SELECT commands to account for SQL_ATTR_MAX_ROWS.
*/
+ if ( getMaxRows() )
+ {
+ }
- MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_HY000, 0,
tr("doFirst() not supported in this context") ) );
+ this->pCommand = pCommand;
+
+ setState( STATE_PREPARED );
+
+ MYODBCDbgReturn( SQL_SUCCESS );
}
+SQLRETURN MResultRes::doFirst()
+{
+ MYODBCDbgEnter();
+
+ SQLRETURN nReturn1 = SQL_SUCCESS;
+ SQLRETURN nReturn2 = SQL_SUCCESS;
+
+ switch ( getBuffered() )
+ {
+ case BUFFERED_UNBUFFERED:
+ break;
+ case BUFFERED_MYSQL_PLUS:
+ // have we buffered everything yet?
+ if ( !isResultSetRowsKnown() )
+ {
+ if ( getResultSetRows() < getRowSetSize() )
+ nReturn = getRowSetData();
+ }
+ break;
+ case BUFFERED_MYSQL_CLIENT:
+ mysql_data_seek( pRes, 0 );
+ break;
+ default:
+ MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_HY000, 0,
tr("Unknown buffer type.") ) );
+ }
+
+ nReturn2 = MResult::doFirst();
+
+ MYODBCDbgReturn( nReturn2 );
+}
+
/*!
\brief Use this to insert a new, blank, row.
@@ -606,40 +613,6 @@
}
/*!
- \brief Prepares the provided statement.
-
- This is called to get the server to prepare the statement and to load the
result-set meta-data
- into the IRD but in a MYSQL_RES based result-set we do not have any real
ability to get meta-data
- until after we execute so this call does not do too much.
-
- \param command Command we are supporting.
-
- \return SQLRETURN
-
- \sa doExecute
-*/
-SQLRETURN MResultRes::doPrepare( MCommand *pCommand )
-{
- MYODBCDbgEnter();
-
- /*!
- \internal
- \todo
-
- We may want to append LIMIT to SELECT commands to account for SQL_ATTR_MAX_ROWS.
- */
-
- if ( getState() != STATE_INITIALIZED ) /* should call doClear() first */
- MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_HY010 ) );
-
- this->pCommand = pCommand;
-
- setState( STATE_PREPARED );
-
- MYODBCDbgReturn( SQL_SUCCESS );
-}
-
-/*!
\brief Make the previous row in the result-set the current row.
This will make the previous row in the result-set the current row.
@@ -760,22 +733,6 @@
MYODBCDbgReturn( SQL_SUCCESS );
}
-SQLRETURN MResultRes::doCommit()
-{
- MYODBCDbgEnter();
-
- /*!
- \internal
- \todo
-
- Implement.
-
- \sa MResultStmt::doCommit
- */
-
- MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_HY000, 0,
tr("doCommit() not supported in this context") ) );
-}
-
/*!
\brief Downgrades cursor if it exceeds our abilities.
Modified: trunk/SDK/MYSQLPlus/Library/MResultRes.h
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MResultRes.h 2006-09-09 22:07:39 UTC (rev 532)
+++ trunk/SDK/MYSQLPlus/Library/MResultRes.h 2006-09-10 21:43:22 UTC (rev 533)
@@ -30,19 +30,21 @@
/* getters */
SQLRETURN getData( SQLUSMALLINT nColumn, QVariant &variantData );
- SQLRETURN doPrepare( MCommand *pCommand );
- SQLRETURN doExecute();
+ /* do'ers */
SQLRETURN doAppend();
SQLRETURN doClear();
+ SQLRETURN doCommit();
SQLRETURN doDelete();
+ SQLRETURN doExecute();
+ SQLRETURN doPrepare( MCommand *pCommand );
SQLRETURN doFirst();
+
SQLRETURN doInsert();
SQLRETURN doLast();
SQLRETURN doNext();
SQLRETURN doPrev();
SQLRETURN doSkip( qlonglong nRows );
SQLRETURN doGoto( qulonglong nRow );
- SQLRETURN doCommit();
SQLRETURN doRefresh();
protected:
@@ -61,9 +63,9 @@
IF BUFFERED_UNBUFFERED THEN
listRows contains RowSet only
ELSE IF BUFFERED_MYSQL_CLIENT THEN
- listRows contains RowSet only
+ listRows contains RowSet only but we can scroll backward and/or seek
ELSE IF BUFFERED_MYSQL_PLUS THEN
- listRows is loaded, as needed, with ResultSet
+ listRows is loaded, as needed, with entire ResultSet, we can
scroll/seek and data can be updated
ENDIF
*/
/*@{*/
Modified: trunk/SDK/MYSQLPlus/Library/MStatement.cpp
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MStatement.cpp 2006-09-09 22:07:39 UTC (rev 532)
+++ trunk/SDK/MYSQLPlus/Library/MStatement.cpp 2006-09-10 21:43:22 UTC (rev 533)
@@ -1062,6 +1062,7 @@
}
/* generate result */
+#ifdef RESULTPLUS
MResultPlus *pResult = new MResultPlus( this );
nReturn = pResult->getTypeInfo( nDataType );
@@ -1070,6 +1071,9 @@
delete pResult;
MYODBCDbgReturn( nReturn );
}
+#else
+ MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_IM001 ) );
+#endif
setState( STATE_S5 );
@@ -2250,6 +2254,7 @@
}
/* generate result */
+#ifdef RESULTPLUS
MResultPlus *pResult = new MResultPlus( this );
nReturn = pResult->doColumnPrivileges( stringCatalog, stringSchema, stringTable,
stringColumn );
@@ -2258,6 +2263,9 @@
delete pResult;
MYODBCDbgReturn( nReturn );
}
+#else
+ MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_IM001 ) );
+#endif
setImplicitPrepare( true );
setState( STATE_S5 );
@@ -2402,6 +2410,7 @@
}
/* generate result */
+#ifdef RESULTPLUS
MResultPlus *pResult = new MResultPlus( this );
nReturn = pResult->doColumns( stringCatalog, stringSchema, stringTable,
stringColumn );
@@ -2410,6 +2419,9 @@
delete pResult;
MYODBCDbgReturn( nReturn );
}
+#else
+ MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_IM001 ) );
+#endif
setImplicitPrepare( true );
setState( STATE_S5 );
@@ -3237,6 +3249,7 @@
}
/* generate result */
+#ifdef RESULTPLUS
MResultPlus *pResult = new MResultPlus( this );
nReturn = pResult->doForeignKeys( stringPKCatalog, stringPKSchema, stringPKTable,
stringFKCatalog, stringFKSchema, stringFKTable );
@@ -3245,6 +3258,9 @@
delete pResult;
MYODBCDbgReturn( nReturn );
}
+#else
+ MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_IM001 ) );
+#endif
setImplicitPrepare( true );
setState( STATE_S5 );
@@ -3997,6 +4013,7 @@
}
/* generate result */
+#ifdef RESULTPLUS
MResultPlus *pResult = new MResultPlus( this );
nReturn = pResult->doPrimaryKeys( stringCatalog, stringSchema, stringTable );
@@ -4005,6 +4022,9 @@
delete pResult;
MYODBCDbgReturn( nReturn );
}
+#else
+ MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_IM001 ) );
+#endif
setImplicitPrepare( true );
setState( STATE_S5 );
@@ -4142,6 +4162,7 @@
}
/* generate result */
+#ifdef RESULTPLUS
MResultPlus *pResult = new MResultPlus( this );
nReturn = pResult->doProcedureColumns( stringCatalog, stringSchema,
stringProcedure, stringColumn );
@@ -4150,6 +4171,9 @@
delete pResult;
MYODBCDbgReturn( nReturn );
}
+#else
+ MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_IM001 ) );
+#endif
setImplicitPrepare( true );
setState( STATE_S5 );
@@ -4284,6 +4308,7 @@
}
/* generate result */
+#ifdef RESULTPLUS
MResultPlus *pResult = new MResultPlus( this );
nReturn = pResult->doProcedures( stringCatalog, stringSchema, stringProcedure );
@@ -4292,6 +4317,9 @@
delete pResult;
MYODBCDbgReturn( nReturn );
}
+#else
+ MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_IM001 ) );
+#endif
setImplicitPrepare( true );
setState( STATE_S5 );
@@ -4753,6 +4781,7 @@
}
/* generate result */
+#ifdef RESULTPLUS
MResultPlus *pResult = new MResultPlus( this );
nReturn = pResult->doSpecialColumns( nIdentifierType, stringCatalog, stringSchema,
stringTable, nScope, nNullable );
@@ -4761,6 +4790,9 @@
delete pResult;
MYODBCDbgReturn( nReturn );
}
+#else
+ MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_IM001 ) );
+#endif
setImplicitPrepare( true );
setState( STATE_S5 );
@@ -4994,6 +5026,7 @@
}
/* generate result */
+#ifdef RESULTPLUS
MResultPlus *pResult = new MResultPlus( this );
nReturn = pResult->doStatistics( stringCatalog, stringSchema, stringTable,
nUnique, nReserved );
@@ -5002,6 +5035,9 @@
delete pResult;
MYODBCDbgReturn( nReturn );
}
+#else
+ MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_IM001 ) );
+#endif
setImplicitPrepare( true );
setState( STATE_S5 );
@@ -5132,6 +5168,7 @@
}
/* generate result */
+#ifdef RESULTPLUS
MResultPlus *pResult = new MResultPlus( this );
nReturn = pResult->doTablePrivileges( stringCatalog, stringSchema, stringTable );
@@ -5140,6 +5177,9 @@
delete pResult;
MYODBCDbgReturn( nReturn );
}
+#else
+ MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_IM001 ) );
+#endif
setImplicitPrepare( true );
setState( STATE_S5 );
@@ -5304,6 +5344,7 @@
}
/* generate result */
+#ifdef RESULTPLUS
MResultPlus *pResult = new MResultPlus( this );
nReturn = pResult->doTables( stringCatalog, stringSchema, stringTable,
stringTableType );
@@ -5312,6 +5353,9 @@
delete pResult;
MYODBCDbgReturn( nReturn );
}
+#else
+ MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_IM001 ) );
+#endif
setImplicitPrepare( true );
setState( STATE_S5 );
@@ -6539,18 +6583,32 @@
switch ( nStatementType )
{
case MConnection::STATEMENT_DYNAMIC:
+#ifdef RESULTRES
+ pResult = new MResultRes( this );
+#elif RESULTSTMT
+ pResult = new MResultStmt( this );
+#endif
+ break;
+
case MConnection::STATEMENT_RES:
+#ifdef RESULTRES
pResult = new MResultRes( this );
+#endif
break;
case MConnection::STATEMENT_STMT:
+#ifdef RESULTSTMT
pResult = new MResultStmt( this );
+#endif
break;
default:
MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_HY000, 0,
QString( tr("Unknown statement type %1") ).arg( nStatementType ) ) );
}
+ if ( !pResult )
+ MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_IM001 ) );
+
/* get MResult to do more prepare as needed */
SQLRETURN nReturn = pResult->doPrepare( pCommand );
if ( !SQL_SUCCEEDED( nReturn ) )
Modified: trunk/SDK/MYSQLPlus/include/MConnection.h
===================================================================
--- trunk/SDK/MYSQLPlus/include/MConnection.h 2006-09-09 22:07:39 UTC (rev 532)
+++ trunk/SDK/MYSQLPlus/include/MConnection.h 2006-09-10 21:43:22 UTC (rev 533)
@@ -9,9 +9,15 @@
friend class MStatement;
friend class MDescriptor;
friend class MResult;
+#ifdef RESULTPLUS
friend class MResultPlus;
+#endif
+#ifdef RESULTRES
friend class MResultRes;
+#endif
+#ifdef RESULTSTMT
friend class MResultStmt;
+#endif
friend class MCommands;
friend class MCommand;
public:
Modified: trunk/SDK/MYSQLPlus/include/MDescriptor.h
===================================================================
--- trunk/SDK/MYSQLPlus/include/MDescriptor.h 2006-09-09 22:07:39 UTC (rev 532)
+++ trunk/SDK/MYSQLPlus/include/MDescriptor.h 2006-09-10 21:43:22 UTC (rev 533)
@@ -35,9 +35,15 @@
*/
class MResult;
+#ifdef RESULTPLUS
class MResultPlus;
+#endif
+#ifdef RESULTRES
class MResultRes;
+#endif
+#ifdef RESULTSTMT
class MResultStmt;
+#endif
class MDescriptorRecord;
class MDescriptorRecordAPD;
class MDescriptorRecordARD;
@@ -47,9 +53,15 @@
class MDescriptor : public QObject
{
friend class MResult;
+#ifdef RESULTPLUS
friend class MResultPlus;
+#endif
+#ifdef RESULTRES
friend class MResultRes;
+#endif
+#ifdef RESULTSTMT
friend class MResultStmt;
+#endif
friend class MConnection;
friend class MStatement;
friend class MDescriptorRecord;
Modified: trunk/SDK/MYSQLPlus/include/MEnvironment.h
===================================================================
--- trunk/SDK/MYSQLPlus/include/MEnvironment.h 2006-09-09 22:07:39 UTC (rev 532)
+++ trunk/SDK/MYSQLPlus/include/MEnvironment.h 2006-09-10 21:43:22 UTC (rev 533)
@@ -6,7 +6,9 @@
class MEnvironment : public QObject
{
friend class MConnection;
+#ifdef RESULTPLUS
friend class MResultPlus;
+#endif
public:
MEnvironment( QObject *pObjectParent = NULL );
~MEnvironment();
Modified: trunk/SDK/MYSQLPlus/include/MStatement.h
===================================================================
--- trunk/SDK/MYSQLPlus/include/MStatement.h 2006-09-09 22:07:39 UTC (rev 532)
+++ trunk/SDK/MYSQLPlus/include/MStatement.h 2006-09-10 21:43:22 UTC (rev 533)
@@ -10,9 +10,15 @@
friend class MStatement;
friend class MConnection;
friend class MResult;
+#ifdef RESULTPLUS
friend class MResultPlus;
+#endif
+#ifdef RESULTRES
friend class MResultRes;
+#endif
+#ifdef RESULTSTMT
friend class MResultStmt;
+#endif
friend class MDescriptor;
public:
| Thread |
|---|
| • Connector/ODBC 5 commit: r533 - in trunk/SDK/MYSQLPlus: Library include | pharvey | 10 Sep |