Updated June 3, 2023
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, which means the value of that field is automatically incremented. The auto_increment property of columns always starts from one, this is by default value. Another main thing about the 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 the 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 the 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 used to reduce data redundancy by using small tables with primary and foreign keys. Now let’s see how we can generate primary keys automatically as follows.
The primary key is a unique key constraint that uniquely identifies each row from the specified table. But how can we say that primary is a unique key. The solution to this question is to use a formula to generate a primary key, which checks the availability of the legend in the table before the insertion operation. This solution works very well, but the structure of the solution is complex and not foolproof. So how can we avoid the complexity of key generation, the answer to 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 the 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 the above example, we created a table name cricket_match by using create table statement with different attributes 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 the primary key constraint, as shown at the end of the statement, and the primary key constraint is useful to identify unique rows in the table.
- Match_type is a variable-length character with a maximum size of the 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 the character. The Match_location has a not-null constraint, so 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 the 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, we insert some records using the above insert into a 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 to use the alter command as follows.
alter table keyword table_name auto_increment = starting values of specified column.
In the above syntax, we use alter table command to set the auto_increment value. Here table_name means a specified table we need to change the starting value. In MariaDB, we only required a specified column name that contain the 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 the auto_increment value; here, we set auto_increment, that means the 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 the 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 the MariaDB auto_increment function and different examples of the auto_increment function. This article taught us how and when to use MariaDB auto_increment function.
We hope that this EDUCBA information on “MariaDB AUTO_INCREMENT” was beneficial to you. You can view EDUCBA’s recommended articles for more information.