From: <fg...@us...> - 2016-04-04 13:54:36
|
Revision: 4637 http://openutils.svn.sourceforge.net/openutils/?rev=4637&view=rev Author: fgiust Date: 2016-04-04 13:54:34 +0000 (Mon, 04 Apr 2016) Log Message: ----------- update deps Modified Paths: -------------- trunk/openutils-dbmigration/pom.xml trunk/openutils-dbmigration/src/main/java/it/openutils/migration/DbSetupManagerImpl.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcColumnBasedConditionalTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfColumnExistsConditionalTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfColumnIndexExistsConditionalTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfColumnIsNotNullableConditionalTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfForeignKeyExistsConditionalTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfPrimaryKeyExistsConditionalTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfTableExistsConditionalTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcObjectCreationTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/oracle/OraclePackageCreationTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/oracle/OracleSequenceCreationTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/oracle/OracleTriggerTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/oracle/OracleViewCreateOrUpdateTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/postgres/PostGreSQLSequenceChecker.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerFunctionCreateOrUpdateTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerObjCreationTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerProcedureCreateOrUpdateTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerScriptBasedUnconditionalTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerSynonymCreationTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerViewCreateOrUpdateTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/BaseConditionalTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/DatabaseConditionalTaskList.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/ExcelConfigurationTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/GenericConditionalTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/ScriptBasedUnconditionalTask.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/update/ScriptBasedDbUpdate.java Added Paths: ----------- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerAnonymousUniqueConstraintDelete.java trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerDefaultValueConstraintDelete.java Modified: trunk/openutils-dbmigration/pom.xml =================================================================== --- trunk/openutils-dbmigration/pom.xml 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/pom.xml 2016-04-04 13:54:34 UTC (rev 4637) @@ -34,14 +34,14 @@ </scm> <dependencies> <dependency> - <groupId>commons-lang</groupId> - <artifactId>commons-lang</artifactId> - <version>2.4</version> + <groupId>org.apache.commons</groupId> + <artifactId>commons-lang3</artifactId> + <version>3.4</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> - <version>1.4</version> + <version>2.4</version> </dependency> <dependency> <groupId>org.springframework</groupId> @@ -79,17 +79,17 @@ <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> - <version>1.7.5</version> + <version>1.7.20</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> - <version>1.7.5</version> + <version>1.7.20</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> - <version>3.2-FINAL</version> + <version>3.14</version> <optional>true</optional> <exclusions> <exclusion> @@ -105,8 +105,7 @@ <dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> - <classifier>jdk15</classifier> - <version>5.1</version> + <version>6.9.10</version> <scope>test</scope> <exclusions> <exclusion> Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/DbSetupManagerImpl.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/DbSetupManagerImpl.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/DbSetupManagerImpl.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -25,7 +25,7 @@ import javax.sql.DataSource; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.dao.DataAccessException; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcColumnBasedConditionalTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcColumnBasedConditionalTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcColumnBasedConditionalTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -26,7 +26,7 @@ import java.util.HashMap; import java.util.Map; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.dao.DataAccessException; import org.springframework.jdbc.core.ConnectionCallback; import org.springframework.jdbc.core.JdbcTemplate; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfColumnExistsConditionalTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfColumnExistsConditionalTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfColumnExistsConditionalTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -23,7 +23,7 @@ import java.sql.ResultSet; import java.sql.SQLException; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.dao.DataAccessException; import org.springframework.jdbc.core.ConnectionCallback; import org.springframework.jdbc.core.JdbcTemplate; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfColumnIndexExistsConditionalTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfColumnIndexExistsConditionalTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfColumnIndexExistsConditionalTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -28,10 +28,10 @@ import java.util.Set; import java.util.TreeSet; -import org.apache.commons.lang.ArrayUtils; -import org.apache.commons.lang.StringUtils; -import org.apache.commons.lang.builder.EqualsBuilder; -import org.apache.commons.lang.builder.HashCodeBuilder; +import org.apache.commons.lang3.ArrayUtils; +import org.apache.commons.lang3.StringUtils; +import org.apache.commons.lang3.builder.EqualsBuilder; +import org.apache.commons.lang3.builder.HashCodeBuilder; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.dao.DataAccessException; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfColumnIsNotNullableConditionalTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfColumnIsNotNullableConditionalTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfColumnIsNotNullableConditionalTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -20,7 +20,7 @@ import java.util.Map; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; /** Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfForeignKeyExistsConditionalTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfForeignKeyExistsConditionalTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfForeignKeyExistsConditionalTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -23,7 +23,7 @@ import java.sql.ResultSet; import java.sql.SQLException; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.dao.DataAccessException; import org.springframework.jdbc.core.ConnectionCallback; import org.springframework.jdbc.core.JdbcTemplate; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfPrimaryKeyExistsConditionalTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfPrimaryKeyExistsConditionalTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfPrimaryKeyExistsConditionalTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -26,7 +26,7 @@ import java.util.Map; import java.util.TreeMap; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.dao.DataAccessException; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfTableExistsConditionalTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfTableExistsConditionalTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcIfTableExistsConditionalTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -23,7 +23,7 @@ import java.sql.ResultSet; import java.sql.SQLException; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.dao.DataAccessException; import org.springframework.jdbc.core.ConnectionCallback; import org.springframework.jdbc.core.JdbcTemplate; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcObjectCreationTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcObjectCreationTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/generic/JdbcObjectCreationTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -28,7 +28,7 @@ import javax.sql.DataSource; import org.apache.commons.io.IOUtils; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.core.io.Resource; import org.springframework.dao.DataAccessException; import org.springframework.jdbc.core.ConnectionCallback; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/oracle/OraclePackageCreationTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/oracle/OraclePackageCreationTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/oracle/OraclePackageCreationTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -26,7 +26,7 @@ import javax.sql.DataSource; import org.apache.commons.io.IOUtils; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.core.io.Resource; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/oracle/OracleSequenceCreationTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/oracle/OracleSequenceCreationTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/oracle/OracleSequenceCreationTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -23,7 +23,7 @@ import javax.sql.DataSource; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.jdbc.core.JdbcTemplate; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/oracle/OracleTriggerTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/oracle/OracleTriggerTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/oracle/OracleTriggerTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -18,7 +18,7 @@ package it.openutils.migration.oracle; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.jdbc.core.JdbcTemplate; import it.openutils.migration.task.setup.GenericConditionalTask; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/oracle/OracleViewCreateOrUpdateTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/oracle/OracleViewCreateOrUpdateTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/oracle/OracleViewCreateOrUpdateTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -28,7 +28,7 @@ import javax.sql.DataSource; import org.apache.commons.io.IOUtils; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.core.io.Resource; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/postgres/PostGreSQLSequenceChecker.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/postgres/PostGreSQLSequenceChecker.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/postgres/PostGreSQLSequenceChecker.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -25,7 +25,7 @@ import javax.sql.DataSource; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.dao.DataAccessException; import org.springframework.jdbc.core.ConnectionCallback; import org.springframework.jdbc.core.JdbcTemplate; Added: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerAnonymousUniqueConstraintDelete.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerAnonymousUniqueConstraintDelete.java (rev 0) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerAnonymousUniqueConstraintDelete.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -0,0 +1,144 @@ +/** + * + * openutils dbmigration (http://www.openmindlab.com/lab/products/dbmigration.html) + * Copyright(C) 2007-2010, Openmind S.r.l. http://www.openmindonline.it + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package it.openutils.migration.sqlserver; + +import it.openutils.migration.task.setup.DbTask; + +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.List; + +import javax.sql.DataSource; + +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.jdbc.core.RowMapper; +import org.springframework.jdbc.core.JdbcTemplate; + + +/** + * This class can be used to remove anonymous unique constraint from sql server db specifying the table name and the + * column name that have the constraint. + * @author gcast + * + */ +public class SqlServerAnonymousUniqueConstraintDelete implements DbTask // NO_UCD (unused code) +{ + + /** + * Logger. + */ + private Logger log = LoggerFactory.getLogger(SqlServerAnonymousUniqueConstraintDelete.class); + + /** + * name of the table with the unique constraint to remove. + */ + private String tableName; + + /** + * name of the column with the unique constraint to remove. + */ + private String columnName; + + /** + * name of the column with the unique constraint to remove. + */ + private String description; + + private static final String QUERY_TO_FIND_NAME_OF_UNIQUE_CONSTRAINT_INDEX = "select indxs.name index_name " + + " from sys.indexes indxs, sys.columns clmns, sys.index_columns indx_clmn " + + " where indxs.object_id = object_id(?) " + + " and clmns.object_id = object_id(?) " + + " and indx_clmn.object_id = object_id(?) " + + " and indxs.index_id = indx_clmn.index_id " + + " and clmns.column_id = indx_clmn.column_id " + + " and indxs.is_unique_constraint = 1 " + + " and clmns.name = ?"; + + /** + * Sets the tableName. + * @param tableName the tableName to set + */ + public void setTableName(String tableName) + { + this.tableName = tableName; + } + + /** + * Sets the columnName. + * @param columnName the columnName to set + */ + public void setColumnName(String columnName) + { + this.columnName = columnName; + } + + /** + * {@inheritDoc} + */ + @Override + public void execute(DataSource dataSource) + { + if (StringUtils.isBlank(tableName) || StringUtils.isBlank(columnName)) + { + log.error( + "Both table name and column name must be specificed. table name: \"{}\", column name \"{}\".", + tableName, + columnName); + return; + } + + JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource); + List<String> query = jdbcTemplate.query(QUERY_TO_FIND_NAME_OF_UNIQUE_CONSTRAINT_INDEX, new RowMapper<String>() + { + + @Override + public String mapRow(ResultSet rs, int rowNum) throws SQLException + { + return rs.getString("index_name"); + } + }, tableName, tableName, tableName, columnName); + if (query.size() == 1) + { + String alterTableDropConstraint = "ALTER TABLE " + tableName + " DROP CONSTRAINT " + query.get(0); + log.debug("Executing:\n{}", alterTableDropConstraint); + jdbcTemplate.update(alterTableDropConstraint); + } + } + + /** + * {@inheritDoc} + */ + @Override + public String getDescription() + { + return description; + } + + /** + * Sets the description. + * @param description the description to set + */ + public void setDescription(String description) + { + this.description = description; + } + +} Property changes on: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerAnonymousUniqueConstraintDelete.java ___________________________________________________________________ Added: svn \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerDefaultValueConstraintDelete.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerDefaultValueConstraintDelete.java (rev 0) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerDefaultValueConstraintDelete.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -0,0 +1,141 @@ +/** + * + * openutils dbmigration (http://www.openmindlab.com/lab/products/dbmigration.html) + * Copyright(C) 2007-2010, Openmind S.r.l. http://www.openmindonline.it + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package it.openutils.migration.sqlserver; + +import it.openutils.migration.task.setup.DbTask; + +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.List; + +import javax.sql.DataSource; + +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.jdbc.core.RowMapper; +import org.springframework.jdbc.core.JdbcTemplate; + + +/** + * This class can be used to remove anonymous unique constraint from sql server db specifying the table name and the + * column name that have the constraint. + * @author gcast + * + */ +public class SqlServerDefaultValueConstraintDelete implements DbTask // NO_UCD (unused code) +{ + + /** + * Logger. + */ + private Logger log = LoggerFactory.getLogger(SqlServerDefaultValueConstraintDelete.class); + + /** + * name of the table with the unique constraint to remove. + */ + private String tableName; + + /** + * name of the column with the unique constraint to remove. + */ + private String columnName; + + /** + * name of the column with the unique constraint to remove. + */ + private String description; + + private static final String QUERY_TO_FIND_NAME_OF_UNIQUE_CONSTRAINT_INDEX = "SELECT NAME " + + " FROM SYSOBJECTS SO " + + " JOIN SYSCONSTRAINTS SC ON SO.ID = SC.CONSTID " + + " WHERE OBJECT_NAME(SO.PARENT_OBJ) = ? " + + " AND SO.XTYPE = 'D' AND SC.COLID = " + + " (SELECT COLID FROM SYSCOLUMNS WHERE ID = OBJECT_ID(?) AND NAME = ?)"; + + /** + * Sets the tableName. + * @param tableName the tableName to set + */ + public void setTableName(String tableName) + { + this.tableName = tableName; + } + + /** + * Sets the columnName. + * @param columnName the columnName to set + */ + public void setColumnName(String columnName) + { + this.columnName = columnName; + } + + /** + * {@inheritDoc} + */ + @Override + public void execute(DataSource dataSource) + { + if (StringUtils.isBlank(tableName) || StringUtils.isBlank(columnName)) + { + log.error( + "Both table name and column name must be specificed. table name: \"{}\", column name \"{}\".", + tableName, + columnName); + return; + } + + JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource); + List<String> query = jdbcTemplate.query(QUERY_TO_FIND_NAME_OF_UNIQUE_CONSTRAINT_INDEX, new RowMapper<String>() + { + + @Override + public String mapRow(ResultSet rs, int rowNum) throws SQLException + { + return rs.getString("name"); + } + }, tableName, tableName, columnName); + if (query.size() == 1) + { + String alterTableDropConstraint = "ALTER TABLE " + tableName + " DROP CONSTRAINT " + query.get(0); + log.debug("Executing:\n{}", alterTableDropConstraint); + jdbcTemplate.update(alterTableDropConstraint); + } + } + + /** + * {@inheritDoc} + */ + @Override + public String getDescription() + { + return description; + } + + /** + * Sets the description. + * @param description the description to set + */ + public void setDescription(String description) + { + this.description = description; + } + +} Property changes on: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerDefaultValueConstraintDelete.java ___________________________________________________________________ Added: svn \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerFunctionCreateOrUpdateTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerFunctionCreateOrUpdateTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerFunctionCreateOrUpdateTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -25,7 +25,7 @@ import javax.sql.DataSource; import org.apache.commons.io.IOUtils; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.core.io.Resource; import org.springframework.jdbc.core.JdbcTemplate; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerObjCreationTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerObjCreationTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerObjCreationTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -24,7 +24,7 @@ import javax.sql.DataSource; import org.apache.commons.io.IOUtils; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.core.io.Resource; import org.springframework.jdbc.core.JdbcTemplate; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerProcedureCreateOrUpdateTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerProcedureCreateOrUpdateTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerProcedureCreateOrUpdateTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -25,7 +25,7 @@ import javax.sql.DataSource; import org.apache.commons.io.IOUtils; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.core.io.Resource; import org.springframework.jdbc.core.JdbcTemplate; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerScriptBasedUnconditionalTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerScriptBasedUnconditionalTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerScriptBasedUnconditionalTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -24,7 +24,7 @@ import javax.sql.DataSource; import org.apache.commons.io.IOUtils; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.core.io.Resource; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerSynonymCreationTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerSynonymCreationTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerSynonymCreationTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -17,11 +17,16 @@ */ package it.openutils.migration.sqlserver; + import java.util.List; import javax.sql.DataSource; +import org.apache.commons.lang3.ArrayUtils; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.jdbc.core.JdbcTemplate; import it.openutils.migration.task.setup.DbTask; @@ -29,23 +34,14 @@ /** * @author Danilo Ghirardelli - * @version $Id:SqlServerSynonymCreationTask.java 3143 2007-09-24 19:50:49Z fgiust $ + * */ public class SqlServerSynonymCreationTask implements DbTask { - private String source; - private List<String> objects; - /** - * Sets the source. - * @param source the source to set - */ - public void setSource(String source) - { - this.source = source; - } + private Logger log = LoggerFactory.getLogger(SqlServerSynonymCreationTask.class); /** * Sets the objects. @@ -59,6 +55,7 @@ /** * {@inheritDoc} */ + @Override public void execute(DataSource dataSource) { @@ -66,15 +63,40 @@ for (String objectName : objects) { + + String originalobj = objectName; + String synonym = objectName; + + if (StringUtils.contains(objectName, "=")) + { + synonym = StringUtils.substringBefore(originalobj, "="); + originalobj = StringUtils.substringAfter(originalobj, "="); + } + int result = jdbcTemplate.queryForObject( "select count(*) from dbo.sysobjects where id = object_id(?) and xtype = N'SN'", - Integer.class, - objectName); - if (result == 0) + new Object[]{synonym }, + Integer.class); + + if (result > 0) { - jdbcTemplate.update( - "CREATE SYNONYM [dbo].[" + objectName + "] FOR [" + source + "].[dbo].[" + objectName + "]"); + // existing synonym, nothing to do + continue; } + + result = jdbcTemplate.queryForObject( + "select count(*) from dbo.sysobjects where id = object_id(?)", + new Object[]{synonym }, + Integer.class); + + if (result > 0) + { + log.warn("An existing object with name {} has been found, but it's not a synonym as expected", synonym); + continue; + } + + jdbcTemplate.update("CREATE SYNONYM " + synonym + " FOR " + originalobj + ""); + } } @@ -82,8 +104,9 @@ /** * {@inheritDoc} */ + @Override public String getDescription() { - return "Creating synonyms from " + source; + return "Creating synonyms from " + ArrayUtils.toString(objects); } } \ No newline at end of file Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerViewCreateOrUpdateTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerViewCreateOrUpdateTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/sqlserver/SqlServerViewCreateOrUpdateTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -1,6 +1,6 @@ /** * - * openutils db migration (http://www.openmindlab.com/lab/products/dbmigration.html) + * openutils dbmigration (http://www.openmindlab.com/lab/products/dbmigration.html) * Copyright(C) 2007-2010, Openmind S.r.l. http://www.openmindonline.it * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -25,7 +25,7 @@ import javax.sql.DataSource; import org.apache.commons.io.IOUtils; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.core.io.Resource; import org.springframework.jdbc.core.JdbcTemplate; @@ -54,7 +54,7 @@ { String viewName = this.objectNameFromFileName(script); - int result = jdbcTemplate.queryForObject(checkQuery, Integer.class, viewName); + int result = jdbcTemplate.queryForObject(checkQuery, new Object[]{viewName }, Integer.class); String scriptContent = readFully(script); scriptContent = StringUtils.replace(scriptContent, "\t", " "); @@ -73,17 +73,23 @@ else { - List<String> previousDDlList = jdbcTemplate - .queryForList("exec sp_helptext ?", new Object[]{viewName }, String.class); + List<String> previousDDlList = jdbcTemplate.queryForList( + "exec sp_helptext ?", + new Object[]{viewName }, + String.class); String previousDDl = StringUtils.join(previousDDlList.toArray(new String[previousDDlList.size()])); - if (!StringUtils.equals(previousDDl, scriptContent)) + if (!StringUtils.equals( + StringUtils.replace(previousDDl, " ", ""), + StringUtils.replace(scriptContent, " ", ""))) { log.info( "Previous definition of view {} differs from actual. Dropping and recreating view", new Object[]{viewName }); + // log.warn("=====\n{}\n=====", previousDDl); + jdbcTemplate.update("DROP VIEW [dbo].[" + viewName + "]"); createView(jdbcTemplate, scriptContent); Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/BaseConditionalTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/BaseConditionalTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/BaseConditionalTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -27,11 +27,12 @@ import javax.sql.DataSource; import org.apache.commons.io.IOUtils; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.core.io.Resource; -import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.jdbc.core.JdbcTemplate; + /** Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/DatabaseConditionalTaskList.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/DatabaseConditionalTaskList.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/DatabaseConditionalTaskList.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -24,7 +24,7 @@ import javax.sql.DataSource; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.dao.DataAccessException; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/ExcelConfigurationTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/ExcelConfigurationTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/ExcelConfigurationTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -34,9 +34,9 @@ import javax.sql.DataSource; import org.apache.commons.io.IOUtils; -import org.apache.commons.lang.ArrayUtils; -import org.apache.commons.lang.ObjectUtils; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.ArrayUtils; +import org.apache.commons.lang3.ObjectUtils; +import org.apache.commons.lang3.StringUtils; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/GenericConditionalTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/GenericConditionalTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/GenericConditionalTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -20,7 +20,7 @@ import java.util.HashMap; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.jdbc.core.JdbcTemplate; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/ScriptBasedUnconditionalTask.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/ScriptBasedUnconditionalTask.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/setup/ScriptBasedUnconditionalTask.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -24,7 +24,7 @@ import javax.sql.DataSource; import org.apache.commons.io.IOUtils; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.core.io.Resource; Modified: trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/update/ScriptBasedDbUpdate.java =================================================================== --- trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/update/ScriptBasedDbUpdate.java 2016-04-03 20:06:40 UTC (rev 4636) +++ trunk/openutils-dbmigration/src/main/java/it/openutils/migration/task/update/ScriptBasedDbUpdate.java 2016-04-04 13:54:34 UTC (rev 4637) @@ -24,7 +24,7 @@ import javax.sql.DataSource; import org.apache.commons.io.IOUtils; -import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.core.io.Resource; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |