diff --git a/JSqlServerBulkInsert/pom.xml b/JSqlServerBulkInsert/pom.xml index 33a564f..3dd1bb1 100644 --- a/JSqlServerBulkInsert/pom.xml +++ b/JSqlServerBulkInsert/pom.xml @@ -63,7 +63,7 @@ UTF-8 - 12.4.1.jre11 + 12.6.1.jre11 diff --git a/JSqlServerBulkInsert/src/main/java/de/bytefish/jsqlserverbulkinsert/util/SchemaUtils.java b/JSqlServerBulkInsert/src/main/java/de/bytefish/jsqlserverbulkinsert/util/SchemaUtils.java index e8f0d1c..ad5de8e 100644 --- a/JSqlServerBulkInsert/src/main/java/de/bytefish/jsqlserverbulkinsert/util/SchemaUtils.java +++ b/JSqlServerBulkInsert/src/main/java/de/bytefish/jsqlserverbulkinsert/util/SchemaUtils.java @@ -23,12 +23,14 @@ public static SchemaMetaData getSchemaMetaData(Connection connection, String sch List columnInformations = new ArrayList<>(); while (rs.next()) { - SchemaMetaData.ColumnInformation columnInformation = new SchemaMetaData.ColumnInformation( - rs.getString("COLUMN_NAME"), - rs.getInt("ORDINAL_POSITION") - ); - - columnInformations.add(columnInformation); + if(rs.getString("IS_GENERATEDCOLUMN").equals("NO")) { + SchemaMetaData.ColumnInformation columnInformation = new SchemaMetaData.ColumnInformation( + rs.getString("COLUMN_NAME"), + rs.getInt("ORDINAL_POSITION") + ); + + columnInformations.add(columnInformation); + } } // Make sure they are sorted ascending by Ordinals: diff --git a/JSqlServerBulkInsert/src/test/java/de/bytefish/jsqlserverbulkinsert/test/integration/IntegrationTest.java b/JSqlServerBulkInsert/src/test/java/de/bytefish/jsqlserverbulkinsert/test/integration/IntegrationTest.java index 264018d..2fbf92b 100644 --- a/JSqlServerBulkInsert/src/test/java/de/bytefish/jsqlserverbulkinsert/test/integration/IntegrationTest.java +++ b/JSqlServerBulkInsert/src/test/java/de/bytefish/jsqlserverbulkinsert/test/integration/IntegrationTest.java @@ -65,7 +65,8 @@ private boolean createTable() throws SQLException { " (\n" + " FirstName NVARCHAR(255),\n" + " LastName NVARCHAR(255),\n" + - " BirthDate DATE\n" + + " BirthDate DATE,\n" + + " Retirement AS (dateadd(year,(60),BirthDate)) \n" + " );"; Statement statement = connection.createStatement(); diff --git a/JSqlServerBulkInsert/src/test/java/de/bytefish/jsqlserverbulkinsert/test/model/Person.java b/JSqlServerBulkInsert/src/test/java/de/bytefish/jsqlserverbulkinsert/test/model/Person.java index 809416f..8a4b111 100644 --- a/JSqlServerBulkInsert/src/test/java/de/bytefish/jsqlserverbulkinsert/test/model/Person.java +++ b/JSqlServerBulkInsert/src/test/java/de/bytefish/jsqlserverbulkinsert/test/model/Person.java @@ -13,6 +13,8 @@ public class Person { private LocalDate birthDate; + private LocalDate retiringDate; + public Person() { } @@ -39,4 +41,12 @@ public LocalDate getBirthDate() { public void setBirthDate(LocalDate birthDate) { this.birthDate = birthDate; } + + public LocalDate getRetiringDate() { + return retiringDate; + } + + public void setRetiringDate(LocalDate retiringDate) { + this.retiringDate = retiringDate; + } }