Here we will learn SQLite introduction, what is SQLite, why we need to use sqlite, features of sqlite, advantages, and disadvantages of sqlite with examples.
SQL (Structured Query Language) is a special programming language that is designed for handling and managing data held in a Relation database management system (RDBMS).
As the name suggests, SQLite is the lightest version of SQL. It does not require any Server, No configuration.
In the simplest terms, SQLite is a public-domain software package that provides a relational database management system or RDBMS.
The “Lite” in SQLite does not refer to its capabilities. Rather, SQLite is lightweight when it comes to setup complexity, administrative overhead, and resource usage.
Overview of SQLite
SQLite is an open-source embedded relational database management system or RDBMS contained in a C programming library. Relational database systems are used to store data in large tables.
In contrast to other popular RDBMS products like Oracle Database, IBM’s DB2, and Microsoft’s SQL Server, SQLite does not require any administrative overhead or any setup complexity.
As the other databases are working as a standalone process, SQLite is not working as a standalone process. You have to link it with your application statically or dynamically.
SQLite uses dynamically and weakly typed SQL for a column. It means you can store any value in any column, regardless of the data type. SQLite implements most of the SQL92 standard.
Features of SQLite
The following are the features of SQLite databases.
- Serverless: SQLite does not require a separate server process or system to operate. The SQLite library accesses its storage files directly.
- Zero Configuration: No server means no setup. Creating an SQLite database instance is as easy as opening a file.
- Cross-Platform: A complete SQLite database is stored in a single cross-platform disk file, requiring no administration.
- Self-Contained: A single library contains the entire database system, which integrates directly into a host application.
- Transactional: SQLite transactions are fully ACID-compliant means all queries are Atomic, Consistent, Isolated, and Durable.
- Light-weight: As the name suggests “Lite”, SQLite is very small and lightweight.
- Familiar language: Familiar query language for database developers and admins.
- Highly Reliable: The SQLite development team takes code testing and verification very seriously.
Weakness of SQLite
The following are the drawbacks of the SQLite database.
- SQLite does not work well in client/server Architecture.
- If you are using SQLite as a backend for High-volume website, then the SQLite will not work fine when compared with enterprise client/server database.
- The SQLite database is limited in size to 140 terabytes (TB). SQLite stores the whole database in Single Disk File. Many file systems do not allow this much size of the file.
- SQLite has not Implemented RIGHT OUTER JOIN and FULL OUTER JOIN. With SQLite, we can only implement a LEFT OUTER JOIN.
- It is not possible to rename a column, remove a column, or add/remove constraints from a table in SQLite. While you can always create a new table and then drop the older one.
- Views in SQLite are read-only. We can’t use DML statements (Insert, Update, and Delete) with Views.
- We cannot use GRANT and REVOKE statements with SQLite.
These are the features, advantages, and disadvantages of using SQLite in our applications.