Easy Tutorial
❮ Sqlite Functions Sqlite Detach Database ❯

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
❮ Sqlite Functions Sqlite Detach Database ❯