Definition of MariaDB AUTO_INCREMENT
MariaDB provides auto_increment property to the users. In which MariaDB generates sequential numbers when we perform insertion operation on specified tables. The auto_increment values are always not null, that means the value of that field automatically incremented. The auto_increment property of columns always starts from one, this is by default value. Another main thing about auto_increment property is that automatically generated values are never less than zero or lower than zero. We can use only one auto_increment property in each table; the same column must have a primary key or unique key constraint. In some storage engines have a by default property like InnoDB , if the key consists of more than one column then auto_increment column must be the first column in that specified table.
Create table table_name (colm name 1 data type auto_increment not null, colm name 2 data type,………colm name N);
In above syntax, we auto_increment property with create table statement in which that column name 1 has auto_increment property with not null clause as shown in above syntax. We can use only one auto_increment property in a single specified table. The auto_increment property of MariaDB automatically generates sequential integer numbers after every insertion operation.
How auto_increment function work in MariaDB?
Basically, auot_increment is a function that works on numerical data types. It automatically generates sequential value for every insertion operation. Normally the auto_increment function we use to reduce redundancy of data by using small tables with primary keys and foreign keys. Now let’s see how we can generate primary keys automatically as follows.
Basically, the primary key is a unique key constraint and it uniquely identifies each row from the specified table. But the question is how can we say that primary is a unique key. The solution to this question is that we can use a formula to generate a primary key, in which every time is check availability of key in the table before insertion operation. This solution works very well but the structure of the solution is complex and not foolproof. So how we can avoid the complexity of key generation, the answer of this question is the auto_increment function we can use to generate a primary key and it avoids complexity of key generation. Auto_increment is used int data type because int data type supports both signed and unsigned values. An unsigned data type contains only positive numbers.
Let’s understand how auto_increment function works in MariaDB with the help of different examples as follows.
create table cricket_match (
Match_id int auto_increment not null,
Match_type varchar(150) not null,
Match_location varchar(500) not null,
primary key (Match_id)
In above example, we created a table name as cricket_match by using create table statement with different attribute with data type as shown above statement. In this table, we created three different columns as follows.
- The Match_id is an integer column with auto_increment property, so MariaDB will automatically increment a sequential number when we insert a new row into the specified table. In addition, the Match_id column is a primary key specified by using primary key constraint as shown at the end of statement and primary key constraint is useful to identify unique rows in the table.
- Match_type is a variable-length character with a maximum size of character. The Match_type has a not-null constraint that means we cannot insert null values into this column.
- Match_location is a variable-length character with a maximum size of character. The Match_location has a not-null constraint that means we cannot insert null values into this column.
The result of the above statement we illustrate by using the following snapshot.
Now let’s see how the auto_increment function works with the help of insertion operation as follows.
insert into cricket_match (Match_type, Match_location) values ("One day", "Mumbai"), ("One day", "Pune"), ("T20", "Mumbai");
After successfully creating the table now we insert some records by using the above insert into statement. See here we only inserted Match_type and Match_location column values because Match_id has an auto_increment function with not null clause.
Now see all inserted records by using the following statement.
select * from cricket_match;
Suppose we need to see all auto_increment values of the Match_id column at that time we use the above statement. In which we use a select clause with a table name. The result of the above statement we illustrate by using the following snapshot.
Let’s see how we can set the starting value of the auto_increment function as follows.
Now we have already created a table that is cricket_match by using the auto_increment function. But we need to change the starting value of the auto_increment column so that purposes we use the alter command as follows.
alter table keyword table_name auto_increment = starting values of specified column.
In above syntax, we use alter table command to set auto_increment value. Here table_name means a specified table that we need to change the starting value. In MariaDB, we only required a specified column name that contain auto_increment function. The starting value means the next value in the sequence in the specified column from the table.
alter table cricket_match auto_increment = 100;
In the above example, we use the alter command to set auto_increment value; here we set auto_increment that means value starts from 100. The result of the above statement we illustrate by using the following snapshot.
Now insert some record to check the new value of the auto_increment function as follows.
We inserted a single row by using insert into the statement as follows.
insert into cricket_match (Match_type, Match_location) values ("T20", "Nagpur");
Now see the table contained by using the following statement.
select * from cricket_match;
We successfully set the starting value of auto_incement function and after that, we inserted a single record as mentioned in the above statement. The result of the above statement we illustrate by using the following snapshot.
We hope from this article you have understood the MariaDB auto_increment function. From the above article, we have learned the basic syntax of MariaDB auto_increment function and we also see different examples of auto_increment function. From this article, we learned how and when we use MariaDB auto_increment function.
This is a guide to MariaDB AUTO_INCREMENT. Here we discuss definition, syntax, How auto_increment function work in MariaDB? and examples with code implementation. You may also have a look at the following articles to learn more –