|
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.
|