List:Commits« Previous MessageNext Message »
From:pharvey Date:September 14 2006 12:12am
Subject:Connector/ODBC 5 commit: r543 - trunk/SDK/MYSQLPlus/Library
View as plain text  
Modified:
   trunk/SDK/MYSQLPlus/Library/Library.pro
   trunk/SDK/MYSQLPlus/Library/MInternal.h
   trunk/SDK/MYSQLPlus/Library/MResult.cpp
   trunk/SDK/MYSQLPlus/Library/MResult.h
   trunk/SDK/MYSQLPlus/Library/MResultPlus.cpp
   trunk/SDK/MYSQLPlus/Library/MResultPlus.h
   trunk/SDK/MYSQLPlus/Library/MResultRes.cpp
   trunk/SDK/MYSQLPlus/Library/MResultRes.h
Log:
- changes/additions for block-cursor support


Modified: trunk/SDK/MYSQLPlus/Library/Library.pro
===================================================================
--- trunk/SDK/MYSQLPlus/Library/Library.pro	2006-09-13 19:40:44 UTC (rev 542)
+++ trunk/SDK/MYSQLPlus/Library/Library.pro	2006-09-13 22:12:39 UTC (rev 543)
@@ -7,7 +7,7 @@
 include( ../../../common.pri )
 include( ../../../config.pri )
 include( ../../../defines.pri )
-CONFIG          += staticlib
+CONFIG          += staticlib MResultPlus
 # CONFIG          += staticlib ResultPlus ResultRes ResultStmt
 INCLUDEPATH	+= ../../C/include
 INCLUDEPATH	+= ../../Dbg/include

Modified: trunk/SDK/MYSQLPlus/Library/MInternal.h
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MInternal.h	2006-09-13 19:40:44 UTC (rev 542)
+++ trunk/SDK/MYSQLPlus/Library/MInternal.h	2006-09-13 22:12:39 UTC (rev 543)
@@ -50,6 +50,9 @@
             SQL_ROW_UPDATED - row exists and has been updated
             SQL_ROW_DELETED - row exists but has been deleted 
             SQL_ROW_ADDED   - row exists and is a newly added row
+
+        \sa SQL_ATTR_CURSOR_SENSITIVITY
+            CURSOR_SENSITIVITY
     */
     /*@{*/
     SQLUSMALLINT        nStatus; 

Modified: trunk/SDK/MYSQLPlus/Library/MResult.cpp
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MResult.cpp	2006-09-13 19:40:44 UTC (rev 542)
+++ trunk/SDK/MYSQLPlus/Library/MResult.cpp	2006-09-13 22:12:39 UTC (rev 543)
@@ -688,6 +688,26 @@
     MYODBCDbgReturn( SQL_SUCCESS );
 }
 
+/*! 
+    \brief  Use this to reset the result-set to start state.
+
+            This clears the result-set (if any) and the prepare (if any). 
+            
+    \return SQLRETURN
+    
+    \sa     doDelete
+            doInsert
+*/
+SQLRETURN MResult::doClear()
+{
+    MYODBCDbgEnter();
+
+    if ( getState() > STATE_INITIALIZED )
+        MYODBCDbgReturn( doStateRollBack( STATE_INITIALIZED ) );
+
+    MYODBCDbgReturn( SQL_SUCCESS );
+}
+
 /*!
     \brief  Aligns the RowSet with the first row in ResultSet.
 

Modified: trunk/SDK/MYSQLPlus/Library/MResult.h
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MResult.h	2006-09-13 19:40:44 UTC (rev 542)
+++ trunk/SDK/MYSQLPlus/Library/MResult.h	2006-09-13 22:12:39 UTC (rev 543)
@@ -324,7 +324,7 @@
 
     /* doers */
     virtual SQLRETURN doAppend() = 0;
-    virtual SQLRETURN doClear() = 0;
+    virtual SQLRETURN doClear();                                                /*!<
reinit ourself                                             */
     virtual SQLRETURN doCommit() = 0;                       
     virtual SQLRETURN doDelete() = 0;                                           /*!<
Operates on RowSetRow.                                     */
     virtual SQLRETURN doExecute() = 0;                                          /*!<
Execute the prepared command.                              */

Modified: trunk/SDK/MYSQLPlus/Library/MResultPlus.cpp
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MResultPlus.cpp	2006-09-13 19:40:44 UTC (rev 542)
+++ trunk/SDK/MYSQLPlus/Library/MResultPlus.cpp	2006-09-13 22:12:39 UTC (rev 543)
@@ -103,16 +103,6 @@
     MYODBCDbgReturn( SQL_SUCCESS );
 }
 
-SQLRETURN MResultPlus::doClear()
-{
-    MYODBCDbgEnter();
-
-    if ( getState() > STATE_INITIALIZED )
-        MYODBCDbgReturn( doStateRollBack( STATE_INITIALIZED ) );
-
-    MYODBCDbgReturn( SQL_SUCCESS );
-}
-
 SQLRETURN MResultPlus::doDelete()
 {
     MYODBCDbgEnter();

Modified: trunk/SDK/MYSQLPlus/Library/MResultPlus.h
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MResultPlus.h	2006-09-13 19:40:44 UTC (rev 542)
+++ trunk/SDK/MYSQLPlus/Library/MResultPlus.h	2006-09-13 22:12:39 UTC (rev 543)
@@ -45,14 +45,12 @@
     /* getters */
 
     /* doers */
-    SQLRETURN doPrepare( MCommand *pCommand );
-    SQLRETURN doExecute();
     SQLRETURN doAppend();
-    SQLRETURN doClear();
+    SQLRETURN doCommit();
     SQLRETURN doDelete();
+    SQLRETURN doExecute();
     SQLRETURN doInsert();
-    SQLRETURN doCommit();
-    SQLRETURN doRefresh();
+    SQLRETURN doPrepare( MCommand *pCommand );
 
     /*!
         \name   Catalog

Modified: trunk/SDK/MYSQLPlus/Library/MResultRes.cpp
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MResultRes.cpp	2006-09-13 19:40:44 UTC (rev 542)
+++ trunk/SDK/MYSQLPlus/Library/MResultRes.cpp	2006-09-13 22:12:39 UTC (rev 543)
@@ -14,7 +14,6 @@
 
     pRes        = NULL;
     pCommand    = NULL;
-    setState( STATE_INITIALIZED );
 
     MYODBCDbgReturn2();
 }
@@ -60,64 +59,6 @@
 }
 
 /*! 
-    \brief  Use this to get a column value.
-
-            This will get the value of a cell in the result-set - for the current row.
-
-            Getting the value in a QVariant defers some of the nuances of data conversion
to
-            Qt including unicode strings and locales.
-
-            Basically; we use QVariant as the hub in a spoke & hub solution to data
conversion.
-
-    \param  nColumn     Desired column.
-    \param  variantData The column value is return here.
-
-    \return SQLRETURN
-    
-    \sa     doGetData
-            doBindCol
-            doRefresh
-*/
-SQLRETURN MResultRes::getData( SQLUSMALLINT nColumn, QVariant &variantData )
-{
-    MYODBCDbgEnter();
-
-    if ( getState() < STATE_EXECUTED )
-        MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_HY010 ) );
-
-    if ( !isValidRowSetRow() )
-        MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_HY000, 0,
tr("Invalid row.") ) );
-
-    if ( !isValidColumn( nColumn ) )
-        MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_HY000, 0,
tr("Invalid column.") ) );
-
-    /*!
-        \internal MYSQLPlus RULE
-
-        Keep it simple for now - use row number as bookmark. 
-    */
-    if ( nColumn == 0 )
-        variantData = getResultSetRow() - 1 + getRowSetRow() - 1;
-    else
-    {
-        switch ( getBuffered() )
-        {
-            case BUFFERED_UNBUFFERED:
-            case BUFFERED_MYSQL_CLIENT:
-                variantData = listRows[ getRowSetRow() - 1 ][ nColumn - 1 ];
-                break;
-            case BUFFERED_MYSQL_PLUS:
-                variantData = listRows[ getResultSetRow() - 1 + getRowSetRow() - 1 ][
nColumn - 1 ];
-                break;
-            default:
-                MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_HY000, 0,
tr("Invalid buffer type.") ) );
-        }
-    }
-
-    MYODBCDbgReturn( SQL_SUCCESS );
-}
-
-/*! 
     \brief  Use this to append a new, blank, row.
 
             This will append a new blank row at the end of the RowSet and make it the
@@ -146,30 +87,6 @@
     MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_HY000, 0,
tr("doAppend() not supported in this context") ) );
 }
 
-/*! 
-    \brief  Use this to reset the result-set to start state.
-
-            This clears the result-set (if any) and the prepare (if any). 
-            
-    \return SQLRETURN
-    
-    \sa     doDelete
-            doInsert
-*/
-SQLRETURN MResultRes::doClear()
-{
-    MYODBCDbgEnter();
-
-    if ( getState() > STATE_INITIALIZED )
-        MYODBCDbgReturn( doStateRollBack( STATE_INITIALIZED ) );
-
-    /* we failed to init in constructor */
-    if ( getState() == STATE_UNINITIALIZED )
-        MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::DIA_HY001, 0,
tr("mysql_init() failed") ) );
-
-    MYODBCDbgReturn( SQL_SUCCESS );
-}
-
 SQLRETURN MResultRes::doCommit()
 {
     MYODBCDbgEnter();

Modified: trunk/SDK/MYSQLPlus/Library/MResultRes.h
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MResultRes.h	2006-09-13 19:40:44 UTC (rev 542)
+++ trunk/SDK/MYSQLPlus/Library/MResultRes.h	2006-09-13 22:12:39 UTC (rev 543)
@@ -28,25 +28,21 @@
     SQLRETURN setData( SQLUSMALLINT nColumn, const QVariant &variantData );
 
     /* getters */
-    SQLRETURN getData( SQLUSMALLINT nColumn, QVariant &variantData );
 
     /* do'ers */
     SQLRETURN doAppend();
-    SQLRETURN doClear();
-    SQLRETURN doCommit();
+    SQLRETURN doCommit();                       
     SQLRETURN doDelete();
     SQLRETURN doExecute();
+    SQLRETURN doFirst( BOOLEAN bRefresh = true );
+    SQLRETURN doGoto( qulonglong nRow, BOOLEAN bRefresh = true );
+    SQLRETURN doInsert();
+    SQLRETURN doLast( BOOLEAN bRefresh = true );
+    SQLRETURN doNext( BOOLEAN bRefresh = true );
     SQLRETURN doPrepare( MCommand *pCommand );
-    SQLRETURN doFirst();
+    SQLRETURN doPrev( BOOLEAN bRefresh = true );
+    SQLRETURN doSkip( qlonglong nRowSets, BOOLEAN bRefresh = true );
 
-    SQLRETURN doInsert();
-    SQLRETURN doLast();
-    SQLRETURN doNext();
-    SQLRETURN doPrev();
-    SQLRETURN doSkip( qlonglong nRows );
-    SQLRETURN doGoto( qulonglong nRow );
-    SQLRETURN doRefresh();
-
 protected:
 
     /* doers */
@@ -57,25 +53,6 @@
     MCommand *      pCommand;           /*!< the command we are supporting            
                                     */
     MYSQL_RES *     pRes;               /*!< current resultset as per
mysql_use_result() / mysql_store_result()             */
 
-    /*!
-        \name   listRows
-
-                IF BUFFERED_UNBUFFERED THEN
-                    listRows contains RowSet only
-                ELSE IF BUFFERED_MYSQL_CLIENT THEN
-                    listRows contains RowSet only but we can scroll backward and/or seek
-                ELSE IF BUFFERED_MYSQL_PLUS THEN
-                    listRows is loaded, as needed, with entire ResultSet, we can
scroll/seek and data can be updated  
-                ENDIF
-    */
-    /*@{*/
-#if defined(_WIN32) && _MSC_VER < 1400
-    QList<MResultRow>           listRows;
-#else
-    QList<QVector<QVariant>>    listRows;
-#endif
-    /*@}*/
-
     /* setters */
 
     /* getters */

Thread
Connector/ODBC 5 commit: r543 - trunk/SDK/MYSQLPlus/Librarypharvey14 Sep