Steps to reproduce the problem:
(1) Alter a MySQL server and turn on the "Connection Polled:" option under the Advanced tab.
(2) Open a Query Analyzer tab from this server.
(3) Assuming "database_1" is the database being connected in the Query Analyzer tab, i.e. the "Database:" combo box shows "database_1".
(4) In the editing area, type the following SQL statements (assuming another database, "database_2", exists) and execute them by pressing CTRL-E
use database_2
go
select database()
go
(5) SQL statements executed successfully but the "Database:" combo box still shows "database_1" and is not updated to "database_2".
In this particular case, it seems that the Pooled Connection object might need to perform a DDL interception in order to fix the problem.
Fixed by intercepting 'USE database' DDL in PooledStatement, update PooledConnection state if DDL is executed successfully.
SVN r31028 - 12.0 branch
SVN r31029 - 13.0 branch
SVN r31030 - trunk
Need to support "DATABASE <DB>" syntax for Teradata and Informix.
Need to support "DATABASE <DB>" syntax for Teradata and Informix.
Added "DATABASE <DB>" syntax support for Teradata and Informix.
SVN r31054 - 12.0 branch
SVN r31055/r31056 - 13.0 branch (MongoDB is added in r31056)
SVN r31057 - trunk
The "USE <DB>" syntax is checked for the following databases:
SQL Server, MySQL, Sybase ASE, MongoDB
The "DATABASE <DB>" syntax is checked for the following databases:
Informix, Teradata
For databases that are not listed above, check is not performed.
Tested all of servers listed above, the followings are supported by Pooled Connection:
SQL Server: USE name, USE "name", USE [name]
MySQL: USE name, USE `name`
Sybase ASE: USE name
Mongo DB: USE name
Informix: DATABASE name, DATABASE "name", DATABASE 'name'
Teradata: DATABASE name, DATABASE "name"
Added "DATABASE <DB>" syntax support for Teradata and Informix.
SVN r31054 - 12.0 branch
SVN r31055/r31056 - 13.0 branch (MongoDB is added in r31056)
SVN r31057 - trunk
The "USE <DB>" syntax is checked for the following databases:
SQL Server, MySQL, Sybase ASE, MongoDB
The "DATABASE <DB>" syntax is checked for the following databases:
Informix, Teradata
For databases that are not listed above, check is not performed.
Tested all of servers listed above, the followings are supported by Pooled Connection:
SQL Server: USE name, USE "name", USE [name]
MySQL: USE name, USE `name`
Sybase ASE: USE name
Mongo DB: USE name
Informix: DATABASE name, DATABASE "name", DATABASE 'name'
Teradata: DATABASE name, DATABASE "name"
Modified 'USE/DATABASE databaseName' DDL interception matching rule to allow databaseName to contain 1 or more words.
SVN r31157 - 12.0 branch
SVN r31158 - 13.0 branch
SVN r31159 - trunk
Modified 'USE/DATABASE databaseName' DDL interception matching rule to allow databaseName to contain 1 or more words.
SVN r31157 - 12.0 branch
SVN r31158 - 13.0 branch
SVN r31159 - trunk
Verified that the database combo box is updated correctly for a connection pooled MySQL connection for ADS 14.0-dev-8 and Build# 31159
Verified that the database combo box is updated correctly for a connection pooled MySQL connection for ADS 14.0-dev-8 and Build# 31159
Issue #8223 |
Closed |
Fixed |
Resolved |
Completion |
No due date |
Fixed Build 12.0/r31157, 13.0/r31158, trunk/r31159 |
No time estimate |
Fixed by intercepting 'USE database' DDL in PooledStatement, update PooledConnection state if DDL is executed successfully.
SVN r31028 - 12.0 branch
SVN r31029 - 13.0 branch
SVN r31030 - trunk