SQLite Autoincrement
SQLite's AUTOINCREMENT is a keyword used to automatically increment field values in a table. We can use the AUTOINCREMENT keyword on specific column names when creating a table to achieve automatic incrementation of the field values.
The AUTOINCREMENT keyword can only be used with integer (INTEGER) fields.
Syntax
The basic usage of the AUTOINCREMENT keyword is as follows:
CREATE TABLE table_name(
column1 INTEGER AUTOINCREMENT,
column2 datatype,
column3 datatype,
.....
columnN datatype,
);
Example
Suppose we want to create a COMPANY table as shown below:
sqlite> CREATE TABLE COMPANY(
ID INTEGER PRIMARY KEY AUTOINCREMENT,
NAME TEXT NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR(50),
SALARY REAL
);
Now, insert the following records into the COMPANY table:
INSERT INTO COMPANY (NAME, AGE, ADDRESS, SALARY)
VALUES ('Paul', 32, 'California', 20000.00);
INSERT INTO COMPANY (NAME, AGE, ADDRESS, SALARY)
VALUES ('Allen', 25, 'Texas', 15000.00);
INSERT INTO COMPANY (NAME, AGE, ADDRESS, SALARY)
VALUES ('Teddy', 23, 'Norway', 20000.00);
INSERT INTO COMPANY (NAME, AGE, ADDRESS, SALARY)
VALUES ('Mark', 25, 'Rich-Mond', 65000.00);
INSERT INTO COMPANY (NAME, AGE, ADDRESS, SALARY)
VALUES ('David', 27, 'Texas', 85000.00);
INSERT INTO COMPANY (NAME, AGE, ADDRESS, SALARY)
VALUES ('Kim', 22, 'South-Hall', 45000.00);
INSERT INTO COMPANY (NAME, AGE, ADDRESS, SALARY)
VALUES ('James', 24, 'Houston', 10000.00);
This will insert 7 tuples into the COMPANY table, and the records in the COMPANY table will be as follows:
ID NAME AGE ADDRESS SALARY
---------- ---------- ---------- ---------- ----------
1 Paul 32 California 20000.0
2 Allen 25 Texas 15000.0
3 Teddy 23 Norway 20000.0
4 Mark 25 Rich-Mond 65000.0
5 David 27 Texas 85000.0
6 Kim 22 South-Hall 45000.0
7 James 24 Houston 10000.0