summaryrefslogtreecommitdiff
path: root/connectivity
diff options
context:
space:
mode:
authorAndrzej J.R. Hunt <andrzej@ahunt.org>2013-09-11 19:44:13 +0100
committerAndrzej J.R. Hunt <andrzej@ahunt.org>2013-09-11 19:45:31 +0100
commite31a1b736a3c51351f9216246307916ba6c6d3a6 (patch)
tree6468259613d805ac1d9fd6582ee2413d26337017 /connectivity
parent68e2a4e41d6e81a6e95a296d775c9ac8f5c97e8b (diff)
Sanitize and quote index identifiers for rebuildIndexes. (firebird-sdbc)
Otherwise firebird won't recognise mixed case index names. Change-Id: Ib581a592d03b12ad0944375d9eec8da9d680487e
Diffstat (limited to 'connectivity')
-rw-r--r--connectivity/source/drivers/firebird/Connection.cxx6
1 files changed, 3 insertions, 3 deletions
diff --git a/connectivity/source/drivers/firebird/Connection.cxx b/connectivity/source/drivers/firebird/Connection.cxx
index dd5d52506735..c00d621216f1 100644
--- a/connectivity/source/drivers/firebird/Connection.cxx
+++ b/connectivity/source/drivers/firebird/Connection.cxx
@@ -830,11 +830,11 @@ void Connection::rebuildIndexes() throw(SQLException)
// and its ResultSet become invalidated) hence we use the native api.
while (xCharIndices->next())
{
- OUString sIndexName(xRow->getString(1));
+ OUString sIndexName(sanitizeIdentifier(xRow->getString(1)));
SAL_INFO("connectivity.firebird", "rebuilding index " + sIndexName);
- OString sAlterIndex = "ALTER INDEX "
+ OString sAlterIndex = "ALTER INDEX \""
+ OUStringToOString(sIndexName, RTL_TEXTENCODING_UTF8)
- + " ACTIVE";
+ + "\" ACTIVE";
ISC_STATUS_ARRAY aStatusVector;
ISC_STATUS aErr;