Liquibase® version 3.8.5 is now available! Get it for free.
2018 XML Announcement
News All Previous Posts >>

Subscribe for email updates

- and/or -

Change: ‘createView’

Create a new database view

Available Attributes

NameDescription
catalogNameName of the catalog@ v3.0E.g. 'cat'
encodingName of the encoding (as specified in java.nio.Charset javadoc) used in the file defined in the `path` attributeDefault: 'utf-8'
fullDefinitionbooleanSet to true if selectQuery is the entire view definition. False if the CREATE VIEW header should be added@ v3.3
pathPath to file containing view definition@ v3.6E.g. 'A String'
relativeToChangelogFilebooleanWhether the file path is relative to the root changelog file rather than to the classpath.
remarksComments stored for the viewE.g. 'A String'
replaceIfExistsbooleanUse 'create or replace' syntaxSupported by: db2, firebird, h2, hsqldb, ingres, mariadb, mssql, mysql, oracle, postgresql, sqlite, sybase@ v1.5
schemaNameName of the schemaE.g. 'public'
[XML: text content] / selectQuerySQL for generating the viewE.g. 'select id, name from person where id > 10'Required for: informixNote: the content of the tag in XML
viewNameName of the view to createE.g. 'v_person'
<changeSet author="liquibase-docs" id="createView-example">
    <createView catalogName="cat"
            encoding="A String"
            fullDefinition="true"
            path="A String"
            relativeToChangelogFile="true"
            remarks="A String"
            replaceIfExists="false"
            schemaName="public"
            viewName="v_person">select id, name from person where id > 10</createView>
</changeSet>
changeSet:
  id: createView-example
  author: liquibase-docs
  changes:
  - createView:
      catalogName: cat
      encoding: A String
      fullDefinition: true
      path: A String
      relativeToChangelogFile: true
      remarks: A String
      replaceIfExists: false
      schemaName: public
      selectQuery: select id, name from person where id > 10
      viewName: v_person
{
  "changeSet": {
    "id": "createView-example",
    "author": "liquibase-docs",
    "changes": [
      {
        "createView": {
          "catalogName": "cat",
          "encoding": "A String",
          "fullDefinition": true,
          "path": "A String",
          "relativeToChangelogFile": true,
          "remarks": "A String",
          "replaceIfExists": false,
          "schemaName": "public",
          "selectQuery": "select id, name from person where id > 10",
          "viewName": "v_person"
        }
      }]
    
  }
}

SQL Generated From Above Sample (MySQL)

CREATE VIEW cat.v_person AS select id,
 name from person where id > 10;

Database Support

DatabaseNotesAuto Rollback
DB2/LUWSupportedYes
DB2/zSupportedYes
DerbySupportedYes
FirebirdSupportedYes
H2SupportedYes
HyperSQLSupportedYes
INGRESSupportedYes
InformixSupportedYes
MariaDBSupportedYes
MySQLSupportedYes
OracleSupportedYes
PostgreSQLSupportedYes
SQL ServerSupportedYes
SQLiteSupportedYes
SybaseSupportedYes
Sybase AnywhereSupportedYes