1
我在這裏設置在Java/Spring中使用liquibase變更集的模式。 直到它與表/密鑰創建工作。但它不適用於自定義SQL。如何使用參數在觸發器中設置模式?
@Bean
@DependsOn("dataSource")
public SpringLiquibase liquibase() {
SpringLiquibase liquibase = new SpringLiquibase();
liquibase.setDataSource(dataSource);
liquibase.setChangeLog("classpath:META-INF/liquibase/application-changes.xml");
liquibase.setContexts("default");
liquibase.setDefaultSchema(databaseProperties.getJdbcSchema());
return liquibase;
}
現在我需要在Postgresql中管理大對象,所以我想添加下列變更集。但是我有問題,因爲它沒有使用參數,所以我不得不在SQL文件中添加「my_schema」。有沒有人知道這個解決方法或解決方案?
<changeSet id="xxx-0.0.1-SNAPSHOT-postgres" runInTransaction="true" failOnError="true"
onValidationFail="HALT" dbms="postgresql">
<sql >
CREATE TRIGGER t_table BEFORE UPDATE OR DELETE ON my_schema.table
FOR EACH ROW EXECUTE PROCEDURE my_schema.lo_manage(content);
</sql>
</changeSet>
也許http://forum.liquibase.org/topic/setting-default-schema-working-for-xml-refactorings-but-not-sql? – pozs