2016-09-30 9 views
0

Я пытаюсь загрузить файл CSV с использованием loadData, два из моих столбцов - это дата. Я не хочу ставить дату в файл csv, но использовать текущее системное время -> SYSDATA (используя Oracle).Liquibase SYSDATE с loadData

Я попытался подробно несколько вещей, ниже которой не работали:

Файл:

CONFIGURATION_ID~SERVICE_NAME~CATEGORY~CONFIGURATION_KEY~CONFIGURATION_VALUE~CREATE_TS~CREATED_BY~UPDATED_BY 
3590~MobileCloudWallet~SYSTEM_PROPERTIES~VTS.Wallet.Provider.Type~XX,UGO,APPLE~26-SEP-16 09.52.05.708089000 AM~SYSTEM~ 
3591~MobileCloudWallet~SYSTEM_PROPERTIES~VTS.Wallet.Provider.Type.UGO.IneligibleCardList~4085869-4085869,4085868-4085868,4085860-4085860~26-SEP-16 09.52.05.730864000 AM~SYSTEM~ 
3592~MobileCloudWallet~SYSTEM_PROPERTIES~VTS.Credentials.Purpose.Type~Payment~26-SEP-16 09.52.05.740717000 AM~SYSTEM~ 

То, что я пытался

<loadData encoding="UTF-8" 
      file="src/main/resources/data/configuration.tsv" quotchar="" 
      separator="~" tableName="CONFIGURATION"> 
      <column name="CONFIGURATION_ID" type="NUMERIC" /> 
      <column name="SERVICE_NAME" type="STRING" /> 
      <column name="CATEGORY" type="STRING" /> 
      <column name="CONFIGURATION_KEY" type="STRING" /> 
      <column name="CONFIGURATION_VALUE" type="STRING" /> 
      <column name="CREATE_TS" type="DATETIME" valueDate="SYSDATE" /> 
      <column name="CREATED_BY" type="STRING" /> 
      <column name="UPDATED_TS" type="DATE" valueDate="SYSDATE"/> 
      <column name="UPDATED_BY" type="STRING" /> 
     </loadData> 

B

<property name="now" value="sysdate" dbms="oracle" /> 

<changeSet...> 
<loadData encoding="UTF-8" 
      file="src/main/resources/data/configuration.tsv" quotchar="" 
      separator="~" tableName="CONFIGURATION"> 
      <column name="CONFIGURATION_ID" type="NUMERIC" /> 
      <column name="SERVICE_NAME" type="STRING" /> 
      <column name="CATEGORY" type="STRING" /> 
      <column name="CONFIGURATION_KEY" type="STRING" /> 
      <column name="CONFIGURATION_VALUE" type="STRING" /> 
      <column name="CREATE_TS" type="DATETIME" defaultValueComputed="${now}" /> 
      <column name="CREATED_BY" type="STRING" /> 
      <column name="UPDATED_TS" type="DATE" defaultValueComputed="${now}"/> 
      <column name="UPDATED_BY" type="STRING" /> 
     </loadData> 
</changeset> 
+0

На основании этого вопроса: http://stackoverflow.com/questions/23550232/liquibase-how-to-set-the-default-value-of-a-date-column-to-be-now-in- utc-form не "" работать? – dbf

+1

Это не с версией 3.5.2 – AfterWorkGuinness

ответ

0

Я был более-мышления вещи. Я установил значение столбца данных в моем CSV в CURRENT_TIMESTAMP, сохранил значение def в файле loadUpdateData как дату и избавился от defaultValueComputed/valueDate. Отлично.