Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Panel
nameblue

This section describes how custom database changes can be made, defining those changes in XML files rather that writing SQL directly against the database.

 

What does this section cover?

Table of Contents

...

CRM.COM uses LiquiBase to implement this database changes management mechanism and uses changelog XML files to define the desired database changes. 

DATABASECHANGELOG table is used to keep track of those the changes that ran.

Each change runs only one time and this is ensured by DATABASECHANGELOGLOCK table.

Changelog For Database Objects

...

Code Block
languagexml
titleprojectname.changelog.xml
collapsetrue
<databaseChangeLog>
	...
	<changeSet author="p_kestora" id="CRMCOM-5483-05">
        <addForeignKeyConstraint baseColumnNames="RENTALID" baseTableName="CUSTOMTABLE" constraintName="FK_CUSTOMTABLE_01" deferrable="false" initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="RENTALID" referencedTableName="TRN_RENTALS"/>
    </changeSet>
	...
</databaseChangeLog>

Changelog For Database Objects

New tables, columns and constraints are defined in <projectname>.changelog.xml which is located under ProjectNameCrmEJB/ejbModule.