diff --git a/src/main/java/org/springframework/tenancy/datasource/AbstractDatabaseSwitchingDataSource.java b/src/main/java/org/springframework/tenancy/datasource/AbstractDatabaseSwitchingDataSource.java index 931e3d0..5e47a73 100644 --- a/src/main/java/org/springframework/tenancy/datasource/AbstractDatabaseSwitchingDataSource.java +++ b/src/main/java/org/springframework/tenancy/datasource/AbstractDatabaseSwitchingDataSource.java @@ -20,6 +20,7 @@ import java.io.PrintWriter; import java.sql.Connection; +import java.sql.DatabaseMetaData; import java.sql.SQLException; import java.sql.Statement; @@ -102,6 +103,9 @@ public Connection getConnection() throws SQLException { protected Connection switchDatabase(Connection con) throws SQLException { String databaseName = getDatabaseName(); if (databaseName != null) { + if (databaseName.contains(language.quoteChar)) { + throw new IllegalStateException("Database name ["+databaseName+"] contains the quote charecter"); + } Statement s = con.createStatement(); try { s.execute(language.switchDatabase(databaseName));