insert

The insert Change Type inserts data into an existing table.

Uses

You can typically use the insert Change Type when you want to add and deploy the specific data or values to the existing table in your database. It can include columns and another attributes listed in this documentation.

Running the insert Change Type

To run this Change Type, follow these steps:

  1. Add the Change Type to your changeset, as shown in the examples on this page.
  2. Specify any required attributes. Use the table on this page to see which ones your database requires.
  3. Deploy your changeset by running the update command:
  4. liquibase update

Now, you should see that your data has been inserted into the table.

Available attributes

Name Description Required for Supports Since
catalogName

Name of the catalog

all 3.0
dbms

Specifies which database type(s) a changeset is to be used for. See valid database type names on Liquibase Database Tutorials. Separate multiple databases with commas. Specify that a changeset is not applicable to a particular database type by prefixing with !. The keywords all and none are also available.

all 3.0
schemaName

Name of the schema

all
tableName Name of the table to insert data into all all

Nested tags

Name Description Required for Supports Multiple allowed
column

The data to insert into columns.

Note: YAML and JSON changelogs using the column tag must nest it within a columns tag.

-- all all

Examples

--liquibase formatted sql

--changeset liquibase-docs:sql-1
CREATE TABLE sql_table(
stringValue VARCHAR(100),
numericValue INT,
booleanValue BOOLEAN,
nullExample VARCHAR(100)
);

--changeset liquibase-docs:sql-2 
INSERT INTO sql_table (stringValue, numericValue, booleanValue, nullExample) VALUES ('Text value', 123, true, null);
databaseChangeLog:
-  changeSet:
    id: yml-1
    author: liquibase-docs
    changes:
    -  createTable:
        tableName: yaml_table
        columns:
        -  column:
            name: stringValue
            type: varchar(100)
        - column:
            name: numericValue
            type: int
        - column:
            name: booleanValue
            type: boolean
        - column:
            name: nullExample
            type: varchar(100)
-  changeSet:
    id: yml-2
    author:  liquibase-docs
    changes:
    -  insert:
        tableName:  yaml_table
        columns:
        -  column:
            name:  stringValue
            value:  'Text value'
        -  column:
            name:  numericValue
            value:  123
        -  column:
            name:  booleanValue
            value:  true
        -  column:
            name:  nullExample
            value:  null
{
    "databaseChangeLog": [
        {
            "changeSet": {
                "id": "json-1",
                "author": "liquibase-docs",
                "changes": [
                    {
                        "createTable": {
                            "tableName": "json_table",
                            "columns": [
                                {
                                    "column": {
                                        "name": "stringValue",
                                        "type": "varchar(100)"
                                    }
                                },
                                {
                                    "column": {
                                        "name": "numericValue",
                                        "type": "int"
                                    }
                                },
                                {
                                    "column": {
                                        "name": "booleanValue",
                                        "type": "boolean"
                                    }
                                },
                                {
                                    "column": {
                                        "name": "nullExample",
                                        "type": "varchar(100)"
                                    }
                                }
                            ]
                        }
                    }
                ]
            }
        },
        {
            "changeSet": {
                "id": "json-2",
                "author": "liquibase-docs",
                "changes": [
                    {
                        "insert": {
                            "columns": [
                                {
                                    "column": {
                                        "name": "stringValue",
                                        "value": "Text value"
                                    }
                                },
                                {
                                    "column": {
                                        "name": "numericValue",
                                        "value": "123"
                                    }
                                },
                                {
                                    "column": {
                                        "name": "booleanValue",
                                        "value": "true"
                                    }
                                },
                                {
                                    "column": {
                                        "name": "nullExample",
                                        "value": "null"
                                    }
                                }
                            ],
                            "tableName": "json_table"
                        }
                    }
                ]
            }
        }
    ]
}
<databaseChangeLog
    xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext"
    xmlns:pro="http://www.liquibase.org/xml/ns/pro"
    xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog
        http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-latest.xsd
        http://www.liquibase.org/xml/ns/dbchangelog-ext
        http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd
        http://www.liquibase.org/xml/ns/pro
        http://www.liquibase.org/xml/ns/pro/liquibase-pro-latest.xsd">

    <changeSet id="xml-1" author="liquibase-docs">
        <createTable tableName="xml_table">
            <column name="stringValue" type="varchar(100)" />
            <column name="numericValue" type="int" />
        	<column name="booleanValue" type="boolean" />
            <column name="nullExample" type="varchar(100)" />
        </createTable>
    </changeSet>

    <changeSet id="xml-2" author="liquibase-docs">
        <insert tableName="xml_table">
            <column name="stringValue" value="Text value" />
            <column name="numericValue" value="123" />
            <column name="booleanValue" value="true" />
            <column name="nullExample" value="null" />
        </insert>
    </changeSet>

</databaseChangeLog>

Database support

Database Note Auto Rollback
DB2/LUW Supported No
DB2/z Supported No
Derby Supported No
Firebird Supported No
Google BigQuery Supported No
H2 Supported No
HyperSQL Supported No
INGRES Supported No
Informix Supported No
MariaDB Supported No
MySQL Supported No
Oracle Supported No
PostgreSQL Supported No
Snowflake Supported No
SQL Server Supported No
SQLite Supported No
Sybase Supported No
Sybase Anywhere Supported No