Modified:
trunk/ChangeLog
trunk/Install.bat
trunk/SDK/MYSQLPlus/Library/MCommand.cpp
trunk/SDK/MYSQLPlus/Library/MConnection.cpp
trunk/SDK/MYSQLPlus/Library/MStatement.cpp
trunk/Uninstall.bat
trunk/VersionInfo.h
Log:
Fixed return for server sanity check in MConnection.
Added case-insensitivity for checking statement type in MCommand.
Fixed handling of tx-capable in MStatement. (bug#25045)
Added bug #'s to ChangeLog.
Removed PAUSE calls from build scripts so it doesn't interfere with automated nightly
builds.
Inv ver #'s for next dev cycle.
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2006-12-13 18:31:18 UTC (rev 744)
+++ trunk/ChangeLog 2006-12-13 20:23:56 UTC (rev 745)
@@ -6,14 +6,13 @@
---------------------------------------------
11-DEC-2006 (5.00.10 Beta6)
---------------------------------------------
--- FIX: String query parameters are escaped correctly.
--- ENH: Added wide-string type info for SQLGetTypeInfo.
--- ENH: Added loose handling of retrieving some diagnostic data.
--- ENH: Added initial support for calling stored procedures.
--- ENH: Added initial unicode support in data and metadata.
--- ENH: Significant performance improvement when retrieving large text fields
-in pieces.
--- FIX: Editing DSN no longer crashes ODBC data source administrator.
+-- FIX: String query parameters are new escaped correctly. (fix bug#19078)
+-- ENH: Added wide-string type info for SQLGetTypeInfo().
+-- ENH: Added loose handling of retrieving some diagnostic data. (fix bug#15782)
+-- ENH: Added initial support for removing braces when calling stored procedures and
retrieving result sets from procedure calls. (fix bug#24485)
+-- ENH: Added initial unicode support in data and metadata. (fix bug#24837)
+-- ENH: Significant performance improvement when retrieving large text fields in pieces
using SQLGetData() with a buffer smaller than the whole data. Mainly used in Access when
fetching very large text fields. (fix bug#24876)
+-- FIX: Editing DSN no longer crashes ODBC data source administrator. (fix bug#24675)
---------------------------------------------
20-NOV-2006 (5.00.09 Beta5)
Modified: trunk/Install.bat
===================================================================
--- trunk/Install.bat 2006-12-13 18:31:18 UTC (rev 744)
+++ trunk/Install.bat 2006-12-13 20:23:56 UTC (rev 745)
@@ -95,7 +95,6 @@
ECHO "| Build.bat. |"
ECHO "| |"
ECHO "+-----------------------------------------------------+"
-PAUSE
EXIT /B 1
:doError3
@@ -107,7 +106,6 @@
ECHO "| Build.bat. |"
ECHO "| |"
ECHO "+-----------------------------------------------------+"
-PAUSE
EXIT /B 1
:doError4
@@ -118,7 +116,6 @@
ECHO "| Existing Connector/ODBC installed. Request ignored. |"
ECHO "| |"
ECHO "+-----------------------------------------------------+"
-PAUSE
EXIT /B 1
:doSyntax
Modified: trunk/SDK/MYSQLPlus/Library/MCommand.cpp
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MCommand.cpp 2006-12-13 18:31:18 UTC (rev 744)
+++ trunk/SDK/MYSQLPlus/Library/MCommand.cpp 2006-12-13 20:23:56 UTC (rev 745)
@@ -171,23 +171,23 @@
- detect SELECT INTO
- support for more keywords/types
*/
- if ( this->stringCommand.startsWith( "SELECT " ) )
+ if ( this->stringCommand.startsWith( "SELECT ", Qt::CaseInsensitive ) )
nType = COMMAND_TYPE_SELECT;
- else if ( this->stringCommand.startsWith( "SHOW " ) )
+ else if ( this->stringCommand.startsWith( "SHOW ", Qt::CaseInsensitive ) )
nType = COMMAND_TYPE_SHOW;
- else if ( this->stringCommand.startsWith( "UPDATE " ) )
+ else if ( this->stringCommand.startsWith( "UPDATE ", Qt::CaseInsensitive ) )
nType = COMMAND_TYPE_UPDATE;
- else if ( this->stringCommand.startsWith( "DELETE " ) )
+ else if ( this->stringCommand.startsWith( "DELETE ", Qt::CaseInsensitive ) )
nType = COMMAND_TYPE_DELETE;
- else if ( this->stringCommand.startsWith( "INSERT " ) )
+ else if ( this->stringCommand.startsWith( "INSERT ", Qt::CaseInsensitive ) )
nType = COMMAND_TYPE_INSERT;
- else if ( this->stringCommand.startsWith( "CALL " ) )
+ else if ( this->stringCommand.startsWith( "CALL ", Qt::CaseInsensitive ) )
nType = COMMAND_TYPE_CALL;
- else if ( this->stringCommand.startsWith( "CREATE " ) )
+ else if ( this->stringCommand.startsWith( "CREATE ", Qt::CaseInsensitive ) )
nType = COMMAND_TYPE_CREATE;
- else if ( this->stringCommand.startsWith( "GRANT " ) )
+ else if ( this->stringCommand.startsWith( "GRANT ", Qt::CaseInsensitive ) )
nType = COMMAND_TYPE_GRANT;
- else if ( this->stringCommand.startsWith( "SET " ) )
+ else if ( this->stringCommand.startsWith( "SET ", Qt::CaseInsensitive ) )
nType = COMMAND_TYPE_SET;
else
nType = COMMAND_TYPE_UNKNOWN;
Modified: trunk/SDK/MYSQLPlus/Library/MConnection.cpp
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MConnection.cpp 2006-12-13 18:31:18 UTC (rev 744)
+++ trunk/SDK/MYSQLPlus/Library/MConnection.cpp 2006-12-13 20:23:56 UTC (rev 745)
@@ -1528,20 +1528,34 @@
{
MYODBCDbgEnter();
- if ( !doServerAliveSanityCheck() || mysql_real_query( (MYSQL*)pMySQL,
stringCommand.toUtf8().data(), stringCommand.length() ) )
- MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::STATE_HY000,
mysql_errno( (MYSQL*)pMySQL ), mysql_error( (MYSQL*)pMySQL ) ) );
+ QByteArray queryBytes = stringCommand.toUtf8();
+ if ( !doServerAliveSanityCheck() || mysql_real_query( (MYSQL*)pMySQL,
+ queryBytes.data(), queryBytes.length() ) )
+ MYODBCDbgReturn( getDiagnostic()->doAppend( MDiagnostic::STATE_HY000,
+ mysql_errno( (MYSQL*)pMySQL ), mysql_error( (MYSQL*)pMySQL ) ) );
+
MYODBCDbgReturn( SQL_SUCCESS );
}
+/*!
+ \brief Check if the connection is still alive.
+
+ Based on the 'server alive sanity check interval', we
+ will decide whether or not to check if the connection
+ is dead.
+
+ \return TRUE if the the server is alive,
+ FALSE if the server is dead
+*/
BOOL MConnection::doServerAliveSanityCheck()
-{
+{
if ( timeLastQuery.restart() >= getServerAliveSanityCheckInterval() )
{
- if ( getConnectionDead() == SQL_CD_FALSE )
+ if ( getConnectionDead() == SQL_CD_TRUE )
MYODBCDbgReturn3( "%d", false );
}
-
+
MYODBCDbgReturn3( "%d", true );
}
Modified: trunk/SDK/MYSQLPlus/Library/MStatement.cpp
===================================================================
--- trunk/SDK/MYSQLPlus/Library/MStatement.cpp 2006-12-13 18:31:18 UTC (rev 744)
+++ trunk/SDK/MYSQLPlus/Library/MStatement.cpp 2006-12-13 20:23:56 UTC (rev 745)
@@ -6942,13 +6942,12 @@
case SQL_TC_NONE:
break;
case SQL_TC_DML:
+ case SQL_TC_DDL_COMMIT:
+ case SQL_TC_DDL_IGNORE:
if ( pCommand->isDataManipulationLanguage() )
nReturn = pConnection->doTransactionStart();
break;
- case SQL_TC_DDL_COMMIT:
- case SQL_TC_DDL_IGNORE:
- break;
- case SQL_TC_ALL:
+ case SQL_TC_ALL: /* TODO MySQL doesn't support this */
nReturn = pConnection->doTransactionStart();
default:
delete pResult;
Modified: trunk/Uninstall.bat
===================================================================
--- trunk/Uninstall.bat 2006-12-13 18:31:18 UTC (rev 744)
+++ trunk/Uninstall.bat 2006-12-13 20:23:56 UTC (rev 745)
@@ -68,7 +68,6 @@
ECHO "| Connector/ODBC does not appear to be installed. |"
ECHO "| |"
ECHO "+-----------------------------------------------------+"
-PAUSE
EXIT /B 1
:doError3
@@ -80,7 +79,6 @@
ECHO "| installed. |"
ECHO "| |"
ECHO "+-----------------------------------------------------+"
-PAUSE
EXIT /B 1
:doSyntax
Modified: trunk/VersionInfo.h
===================================================================
--- trunk/VersionInfo.h 2006-12-13 18:31:18 UTC (rev 744)
+++ trunk/VersionInfo.h 2006-12-13 20:23:56 UTC (rev 745)
@@ -38,10 +38,10 @@
qmake build.
*/
/*@{*/
-#define MYODBC_VERSION "5.00.10"
-#define MYODBC_FILEVER 5,00,10,0
-#define MYODBC_PRODUCTVER 5,00,10,0
-#define MYODBC_STRFILEVER "5, 00, 10, 0\0"
-#define MYODBC_STRPRODUCTVER "5, 00, 10, 0\0"
+#define MYODBC_VERSION "5.00.11"
+#define MYODBC_FILEVER 5,00,11,0
+#define MYODBC_PRODUCTVER 5,00,11,0
+#define MYODBC_STRFILEVER "5, 00, 11, 0\0"
+#define MYODBC_STRPRODUCTVER "5, 00, 11, 0\0"
/*@}*/
| Thread |
|---|
| • Connector/ODBC 5 commit: r745 - in trunk: . SDK/MYSQLPlus/Library | jbalint | 13 Dec |