Liquibase not working with mysql autoincrement

liquibase, mysql

Solution

Change type="number" to type="BIGINT".

i,e

 <createTable tableName="mytable">
        <column name="id" type="BIGINT" autoIncrement="true">
            <constraints primaryKey="true" nullable="false"/>
        </column>
        <column name="name" type="varchar(50)"/>
        <column name="description" type="varchar(255)"/>
        <column name="image_path" type="varchar(255)"/>
    </createTable>

Hope it works..!!!!

Problem

I try to create a new table via a liquibase changeset that looks like: ``` <createTable tableName="mytable"> <column name="id" type="number" autoIncrement="true"> <constraints primaryKey="true" nullable="false"/> </column> <column name="name" type="varchar(50)"/> <column name="description" type="varchar(255)"/> <column name="image_path" type="varchar(255)"/> </createTable> ``` this fails with following error: ``` liquibase.exception.DatabaseException: Error executing SQL CREATE TABLE kkm.mytable (id numeric AUTO_INCREMENT NOT NULL, name VARCHAR(50) NULL, description VARCHAR(255) NULL, image_path VARCHAR(255) NULL, CONSTRAINT PK_BOUFFE PRIMARY KEY (id)): Incorrect column specifier for column 'id' ``` if I set autoIncrement="false", this works perfectly. Is this a known issue ? EDIT: this is working: ``` <createTable tableName="mytable"> <column name="id" type="number" autoIncrement="false"> <constraints primaryKey="true" nullable="false"/> </column> <column name="name" type="varchar(50)"/> <column name="description" type="varchar(255)"/> <column name="image_path" type="varchar(255)"/> </createTable> <addAutoIncrement columnDataType="int" columnName="id" incrementBy="1" startWith="1" tableName="mytable"/> ```

Original source