Skip to main content

Create Table in Liquibase

For creating table using liquibase you can use below code and add it in your liquibase file.


<createTable tableName=“employee”>
    <column name="id" type="int">
     <constraints primaryKey="true" nullable="false"/>
  </column>  
  <column name="first_name" type="varchar(255)"/>
  <column name="last_name" type="varchar(255)"/>
  <column name="username" type="varchar(255)">
     <constraints unique="true" nullable="false"/>
  </column>
</createTable>



The use is pretty simple it's the way it looks :

Tag:
<createTable></createTable>
This is an opening/ending tag for creating a table. These tags will enclose column sub tags which will define columns for the table.


Attribute:
 tableName : Name of the table which you want to create. (This is a mandatory                        field)
 schemaName : Name of the table schema
 tablespace : Name of the tablespace where you want to create the table.
 remarks    : A small description of the table.


Sub Tag:
<column> : It's a self terminating tag or you can use ending tag like '</column>'.

Attributes used in the above code:
 name: Name of the column.
 type: This defines the data type of the column

Optional Attributes:

 value : The value that will be set to the column. The value is surrounded by  quotes.
 valueNumeric : Numeric value will be set to the column. The value is not surrounded by quotes.
 valueBoolean : Boolean value (true/false) will be set to the column. The actual value string inserted will be dependent on the database implementation.
 valueDate : Date/Time value will be set to the value.Supported format - "YYYY-MM-DD","hh:mm:ss" or "YYYY-MM-DDThh:mm:ss".
 valueComputed : A value will be set to the column that is returned by a function or a procedure call.
 defaultValue : If there is no value set to the column then the value set for this attribute will be set automatically.
 defaultValueNumeric : Numeric value will be set as a default value.
 defaultValueBoolean : Boolean value will be set as a default value.
 defaultValueDate : Default value for Date/Time can be provided using this attribute. The format remains same as the format define for "valueDate".
 defaultValueComputed : The value returned by a function or a procedure call will be set as the default value for the column.
 autoIncrement : setting the value as true/false will set the columns as auto-increment.They are ignored by the databases that do not support auto-increment fuctionality.
 remarks : Short description of the column.




Referencehttp://www.liquibase.org/manual/column


Other links that you might like :

liquibase.exception.LockException: Could not acquire change log lock.
How databasechangeloglock and databasechangelog table used by liquibase?







Comments

Popular posts from this blog

Carnivorous Island from "Life of PI"

Yann Martel described about an floating carnivorous Island for symbolizing that something seemingly good in life can turn out to be harmful, so we should keep going with our journey of life... About the carnivorous Island from movie. In the movie 'Life of PI' after PI struggles to live in the pacific with the Bengal tiger suddenly one morning Pi  found himself at a Island. After spending so many days in the middle of the sea he found himself very lucky to find a Island. After spending some time he thought might be this was the end of his suffering and he can spend rest of his life at that island. He makes h is bed on a tree and sleeps there, in the middle of the night he wakes up and find that there were dead fish in the fresh water where he took swim in the day time. While trying to understand the mystery he plucks a fruit from the same tree and peel it off and finds a human tooth inside that fruit and then he realize that it was an carnivorous Island. The...

Everything you need to know about ShellShock.

Shellshock was a security threat that was identified by Stéphane Chazelas on 12 September 2014 and was disclosed and announced to the public on 24 th September 2014 with the fix ready for distribution. It was assigned the identifier as CVE-2014-6271 . By the way, this is another security bug with cool logo after Heartbleed. 1. What is Shellshock? Shellshock is a name given to a vulnerability in Bash which allows an attacker to execute remote commands on vulnerable system. Bash is a command-line interpreter available on most of the operating systems like Apple’s OSx, windows and present on many versions of Linux. Bash also acts as a parser for the functions given to it.  2. Why is it harmful? Shellshock is significantly harmful for the servers connected to internet. Since, it lets attacker to escalate their privileges and potentially they can gain access to root. This gives access to the attacker as if they are the actual user and they can perform any...