Loading, please wait...

A to Z Full Forms and Acronyms

How to get the last row id of a database table in SQLite in C program | C program

Mar 29, 2022 C programming, 2827 Views
How to get the last row id of a database table in SQLite in C program | C program

How to get the last row id of a database table in SQLite in C program | C program

We will insert records into the employee table using source code and then print the last row id on the console screen.

#include <sqlite3.h>
#include <stdio.h>

int main(void)
{
    sqlite3* db_ptr;
    sqlite3_stmt* stmt;
    char* errMesg = 0;

    int ret = 0;
    int last_row_id = 0;

    ret = sqlite3_open("MyDb.db", &db_ptr);

    if (ret != SQLITE_OK) {
        printf("Database opening error\n");
    }

    char* sql_stmt = "INSERT INTO Employee VALUES(201, 'Vikas', 25000);"
                     "INSERT INTO Employee VALUES(202,  'Varun', 30000);";

    ret = sqlite3_exec(db_ptr, sql_stmt, 0, 0, &errMesg);

    if (ret != SQLITE_OK) {

        printf("Error in SQL statement: %s\n", errMesg);

        sqlite3_free(errMesg);
        sqlite3_close(db_ptr);

        return 1;
    }

    last_row_id = sqlite3_last_insert_rowid(db_ptr);
    printf("Last row id in employee table is: %d\n", last_row_id);

    sqlite3_close(db_ptr);
    return 0;
}
A to Z Full Forms and Acronyms