Modified:
trunk/SDK/MYSQLPlus/Library/MResultPlus.h
trunk/SDK/MYSQLPlus/Library/MResultRes.h
trunk/SDK/MYSQLPlus/Library/MResultStmt.cpp
trunk/SDK/MYSQLPlus/Library/MResultStmt.h
Log:
Commit work on trying to make MResultStmt build again.
Impossible. We should come back to it, when we have the resources and
have stabilized the other ways of generating results.
Modified: trunk/SDK/MYSQLPlus/Library/MResultPlus.h
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MResultPlus.h 2007-05-21 16:19:22 UTC (rev 915)
+++ trunk/SDK/MYSQLPlus/Library/MResultPlus.h 2007-05-22 13:41:41 UTC (rev 916)
@@ -100,7 +100,7 @@
/*@}*/
/* isers */
- BOOL isResultSetPossible();
+ virtual BOOL isResultSetPossible();
virtual QString objectName() { return "MResultPlus";}
Modified: trunk/SDK/MYSQLPlus/Library/MResultRes.h
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MResultRes.h 2007-05-21 16:19:22 UTC (rev 915)
+++ trunk/SDK/MYSQLPlus/Library/MResultRes.h 2007-05-22 13:41:41 UTC (rev 916)
@@ -67,7 +67,7 @@
SQLRETURN doPutData( SQLPOINTER pData, SQLINTEGER nStrLenOrInd );
/* isers */
- BOOL isResultSetPossible();
+ virtual BOOL isResultSetPossible();
virtual QString objectName() { return "MResultRes";}
Modified: trunk/SDK/MYSQLPlus/Library/MResultStmt.cpp
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MResultStmt.cpp 2007-05-21 16:19:22 UTC (rev 915)
+++ trunk/SDK/MYSQLPlus/Library/MResultStmt.cpp 2007-05-22 13:41:41 UTC (rev 916)
@@ -26,6 +26,13 @@
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
+#include "MInternal.h"
+#include "MMysql.h"
+#include "MCommand.h"
+#include "MCommands.h"
+#include "MDescriptorRecord.h"
+#include "MDescriptorRecordARD.h"
+#include "MResult.h"
#include "MResultStmt.h"
/*!
@@ -33,23 +40,22 @@
\param pStatement Reference to MStatement (parent).
*/
-MResultStmt::MResultStmt(MStatement *pStatement)
- : MResult(pStatement)
+MResultStmt::MResultStmt(MCommand *pCommand)
+ : MResult(pCommand)
{
DBUG_ENTER("MResultStmt::MResultStmt");
- setObjectName("MResultStmt"); // we avoid Q_OBJECT by avoiding className
-
setState(STATE_UNINITIALIZED);
pbindColumns = NULL;
- if (pStatement->getCursorType() == SQL_CURSOR_FORWARD_ONLY) /* this also implies
SQL_ATTR_CURSOR_SCROLLABLE = SQL_NONSCROLLABLE */
- setBuffered(false);
+ /* this also implies SQL_ATTR_CURSOR_SCROLLABLE = SQL_NONSCROLLABLE */
+ if (getStatement()->getCursorType() == SQL_CURSOR_FORWARD_ONLY)
+ setBuffered(BUFFERED_UNBUFFERED);
else
- setBuffered(true);
+ setBuffered(BUFFERED_MYSQL_CLIENT);
/* init pstm */
- pstm = mysql_stmt_init((MYSQL*)(pStatement->getConnection()->getMySQL()));
+ pstm = mysql_stmt_init((MYSQL*)(getConnection()->getMySQL()));
if (pstm)
{
/*!
@@ -62,12 +68,14 @@
*/
int bUpdateMaxLength = 1;
if (mysql_stmt_attr_set(pstm, STMT_ATTR_UPDATE_MAX_LENGTH,
&bUpdateMaxLength))
- pStatement->getDiagnostic()->doAppend(MDiagnostic::STATE_HY001,
mysql_stmt_errno(pstm), mysql_stmt_error(pstm));
+ getDiagnostic()->doAppend(MDiagnostic::STATE_HY001,
+ mysql_stmt_errno(pstm),
+ mysql_stmt_error(pstm));
setState(STATE_INITIALIZED);
}
else
- pStatement->getDiagnostic()->doAppend(MDiagnostic::STATE_HY001, 0,
- QObject::tr("mysql_stmt_init() failed"));
+ getDiagnostic()->doAppend(MDiagnostic::STATE_HY001, 0,
+ QObject::tr("mysql_stmt_init() failed"));
DBUG_VOID_RETURN;
}
@@ -107,9 +115,9 @@
DBUG_RETURN(getDiagnostic()->doAppend(MDiagnostic::STATE_HY000, 0,
QObject::tr("Resultset is read-only.")));
- if (!isValidRow())
- DBUG_RETURN(getDiagnostic()->doAppend(MDiagnostic::STATE_HY000, 0,
- QObject::tr("Invalid row.")));
+// if (!isValidRow())
+// DBUG_RETURN(getDiagnostic()->doAppend(MDiagnostic::STATE_HY000, 0,
+// QObject::tr("Invalid row.")));
if (!isValidColumn(nColumn))
DBUG_RETURN(getDiagnostic()->doAppend(MDiagnostic::STATE_HY000, 0,
@@ -160,9 +168,9 @@
if (getState() < STATE_EXECUTED)
DBUG_RETURN(getDiagnostic()->doAppend(MDiagnostic::STATE_HY010));
- if (!isValidRow())
- DBUG_RETURN(getDiagnostic()->doAppend(MDiagnostic::STATE_HY000, 0,
- QObject::tr("Invalid row.")));
+// if (!isValidRow())
+// DBUG_RETURN(getDiagnostic()->doAppend(MDiagnostic::STATE_HY000, 0,
+// QObject::tr("Invalid row.")));
if (!isValidColumn(nColumn))
DBUG_RETURN(getDiagnostic()->doAppend(MDiagnostic::STATE_HY000, 0,
@@ -461,11 +469,11 @@
stateGetData.doClear();
- if (!isValidRow(1))
- {
- nRow = 0;
- DBUG_RETURN(SQL_NO_DATA);
- }
+// if (!isValidRow(1))
+// {
+// nRow = 0;
+// DBUG_RETURN(SQL_NO_DATA);
+// }
DBUG_RETURN(doSeek(1));
}
@@ -1063,3 +1071,10 @@
DBUG_RETURN(SQL_SUCCESS);
}
+
+BOOL MResultStmt::isResultSetPossible()
+{
+ DBUG_ENTER("MResultPlus::isResultSetPossible");
+ assert(0);
+ DBUG_RETURN(false);
+}
Modified: trunk/SDK/MYSQLPlus/Library/MResultStmt.h
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MResultStmt.h 2007-05-21 16:19:22 UTC (rev 915)
+++ trunk/SDK/MYSQLPlus/Library/MResultStmt.h 2007-05-22 13:41:41 UTC (rev 916)
@@ -78,8 +78,8 @@
class MResultStmt : public MResult
{
public:
- MResultStmt(MStatement *pStatement);
- ~MResultStmt();
+ MResultStmt(MCommand *pCommand);
+ virtual ~MResultStmt();
/* setters */
SQLRETURN setData(SQLUSMALLINT nColumn, const QVariant &variantData);
@@ -102,6 +102,17 @@
virtual QString objectName() { return "MResultStmt";}
+ SQLRETURN doFirst_() { return SQL_ERROR; }
+ SQLRETURN doGoto_(qlonglong) { return SQL_ERROR; }
+ SQLRETURN doLast_() { return SQL_ERROR; }
+ SQLRETURN doNext_() { return SQL_ERROR; }
+ SQLRETURN doPrev_() { return SQL_ERROR; }
+ SQLRETURN doSkip_(qlonglong) { return SQL_ERROR; }
+
+
+ /* isers */
+ virtual BOOL isResultSetPossible();
+
protected:
/* doers */
| Thread |
|---|
| • Connector/ODBC 5 commit: r916 - trunk/SDK/MYSQLPlus/Library | ahristov | 22 May |