From 57208562502fbc64568ab5a659631f14eb403ae6 Mon Sep 17 00:00:00 2001 From: npedot <nicola.pedot@gmail.com> Date: Fri, 30 Oct 2020 18:53:16 +0100 Subject: [PATCH] adds drop column to drop use case --- .../unibz.cs.semint.kprime/domain/dml/DropColumn.kt | 3 +++ .../usecase/common/SQLizeDropUseCase.kt | 11 +++++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/main/kotlin/unibz.cs.semint.kprime/domain/dml/DropColumn.kt b/src/main/kotlin/unibz.cs.semint.kprime/domain/dml/DropColumn.kt index 1d34f50..c58e973 100644 --- a/src/main/kotlin/unibz.cs.semint.kprime/domain/dml/DropColumn.kt +++ b/src/main/kotlin/unibz.cs.semint.kprime/domain/dml/DropColumn.kt @@ -5,6 +5,9 @@ import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty class DropColumn { + @JacksonXmlProperty(isAttribute = true) + var tableName :String = "" + @JacksonXmlProperty(isAttribute = true) var name :String = "" } \ No newline at end of file diff --git a/src/main/kotlin/unibz.cs.semint.kprime/usecase/common/SQLizeDropUseCase.kt b/src/main/kotlin/unibz.cs.semint.kprime/usecase/common/SQLizeDropUseCase.kt index dd52313..a41e092 100644 --- a/src/main/kotlin/unibz.cs.semint.kprime/usecase/common/SQLizeDropUseCase.kt +++ b/src/main/kotlin/unibz.cs.semint.kprime/usecase/common/SQLizeDropUseCase.kt @@ -1,10 +1,7 @@ package unibz.cs.semint.kprime.usecase.common import unibz.cs.semint.kprime.domain.ddl.Constraint -import unibz.cs.semint.kprime.domain.dml.ChangeSet -import unibz.cs.semint.kprime.domain.dml.DropConstraint -import unibz.cs.semint.kprime.domain.dml.DropTable -import unibz.cs.semint.kprime.domain.dml.DropView +import unibz.cs.semint.kprime.domain.dml.* class SQLizeDropUseCase { @@ -16,9 +13,15 @@ class SQLizeDropUseCase { commands.add(dropViewCommand(dropView)) for (dropConstraint in changeset.dropConstraint) commands.add(dropConstraintCommand(dropConstraint)) + for (dropColumn in changeset.dropColumn) + commands.add(dropColumnsCommand(dropColumn)) return commands } + private fun dropColumnsCommand(dropColumn: DropColumn): String { + return "ALTER TABLE ${dropColumn.tableName} DROP COLUMN ${dropColumn.name};" + } + private fun dropConstraintCommand(dropConstraint: DropConstraint): String { when(dropConstraint.type) { Constraint.TYPE.PRIMARY_KEY.name -> return dropPrimaryKeyCommand(dropConstraint) -- GitLab