Kaydet (Commit) e31a1b73 authored tarafından Andrzej J.R. Hunt's avatar Andrzej J.R. Hunt

Sanitize and quote index identifiers for rebuildIndexes. (firebird-sdbc)

Otherwise firebird won't recognise mixed case index names.

Change-Id: Ib581a592d03b12ad0944375d9eec8da9d680487e
üst 68e2a4e4
...@@ -830,11 +830,11 @@ void Connection::rebuildIndexes() throw(SQLException) ...@@ -830,11 +830,11 @@ void Connection::rebuildIndexes() throw(SQLException)
// and its ResultSet become invalidated) hence we use the native api. // and its ResultSet become invalidated) hence we use the native api.
while (xCharIndices->next()) while (xCharIndices->next())
{ {
OUString sIndexName(xRow->getString(1)); OUString sIndexName(sanitizeIdentifier(xRow->getString(1)));
SAL_INFO("connectivity.firebird", "rebuilding index " + sIndexName); SAL_INFO("connectivity.firebird", "rebuilding index " + sIndexName);
OString sAlterIndex = "ALTER INDEX " OString sAlterIndex = "ALTER INDEX \""
+ OUStringToOString(sIndexName, RTL_TEXTENCODING_UTF8) + OUStringToOString(sIndexName, RTL_TEXTENCODING_UTF8)
+ " ACTIVE"; + "\" ACTIVE";
ISC_STATUS_ARRAY aStatusVector; ISC_STATUS_ARRAY aStatusVector;
ISC_STATUS aErr; ISC_STATUS aErr;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment