SQLite

SQLite

Score 8.9 out of 10
SQLite

Overview

What is SQLite?

SQLite is an in-process library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. The code for SQLite is in the public domain and is thus free for use for any purpose, commercial or private. SQLite is one of...
Read more

Recent Reviews

Read all reviews

Reviewer Pros & Cons

View all pros & cons

Video Reviews

Leaving a video review helps other professionals like you evaluate products. Be the first one in your network to record a review of SQLite, and make your voice heard!

Return to navigation

Product Details

What is SQLite?

SQLite is an in-process library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. The code for SQLite is in the public domain and is thus free for use for any purpose, commercial or private. SQLite is one of the most widely deployed databases in the world.

SQLite Video

SQLite Fundamentals - Why SQLite?

SQLite Integrations

SQLite Technical Details

Operating SystemsUnspecified
Mobile ApplicationNo
Return to navigation

Comparisons

View all alternatives
Return to navigation

Reviews

(1-12 of 12)
Companies can't remove reviews or game the system. Here's why
Score 9 out of 10
Vetted Review
Verified User
We have been using SQLite for a long time now along with Python. it is excellent as it works as an independent Database thus allowing us to create easily scalable applications. WE use it in our machine learning application to store static data which needs regular retrievals of for Data cluster creation.
  • SQLite is easy top install and portable.
  • Table creation is easy with SQLite when using Python.
  • Not being Multi user it doesn't allow multiple user to create concurrent queries
  • no inbuilt Data viewer is available for SQLite
I First Used SQLite with Python when I was a fresher and didn't know much about Databases. SQLite helped me create initial projects with ease and helped me understand RDBMS. Currently, we use SQLite to store DATA outputs which are in the form of JSONS produced by our Algorithm containing Hirerachical trees of the datasets from sample data which are later used by our application for processing.
Sumon K Chowdhury | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
SQLite is an excellent tool because it's easy to use with many languages, especially C#. Because SQLite is quicker and easier to integrate, we use it for C++ applications. And yes, we also used it with web and mobile applications when we needed instant access to a small database. It's the most widely used database with many high-profile applications. We can use it to create long-term storage for our applications without installing anything. It is a transactional SQL database engine self-contained, serverless, and requires zero configuration. This software is fast, reliable, suitable for small and big projects, user-friendly, and easy to learn.
  • Easy-to-use.
  • An easy-to-use query.
  • Simple to understand syntax.
  • Simple in both operation and integration.
  • In Android applications, it is simple to use.
  • Frequently updated cross-platform database.
  • The transaction moves slowly.
  • Too many search windows are confusing.
  • Database size is limited to about 2GB, which is not good.
SQLite is a lightweight and efficient database management system. With SQLite, performance increases as memory are added. It's reliable and well-tested before release. SQLite handles memory allocation and I/O errors gracefully. SQLite provides bug lists and code-change chronologies. All bugs are disclosed, and it's compatible with iOS, Android, MAC, and Windows. SQLite is open-source, allowing developers to tailor it to their specific needs.
Score 10 out of 10
Vetted Review
Verified User
SQLite is my number one choice when I am looking for an embedded database for any cross platform solution. With SQLite, we have been able to create one database model and deploy it across all platforms, including mobile, desktop, and embedded systems. I have not found a better supported multi-platform solution than SQLite. For example, in a recent mobile app upgrade, we were able to roll out full text search across iOS, macOS, Windows, and Android, all from a prepopulated database generated once and deployed multiple times.
  • Compatibility across many platforms
  • Speed and low resource use
  • Full Text Search out of the box
  • Excellent user community and adoption across the industry
  • Scaling beyond embedded instances will require moving to another platform
  • Vendor supplied tools are not as comprehensive as other RDBMS solutions
  • The documentation lacks the professional polish of its competitors
Nothing beats SQLite if you are wanting an easy to use embedded database solution that runs out of the box across a wide range of platforms. If your solution is not likely to scale into a N-tier or client-server architecture, you will find that SQLite serves you well for your application's lifetime.

Both Android and iOS provide comprehensive support for SQLite, and SQLite's own high level of compatibility between versions means that you only need to create a database once to deploy it across multiple platforms.
Score 10 out of 10
Vetted Review
Verified User
SQLite has been instrumental in our ETL pipeline. We utilize it heavily to ingest JSON and XML from multiple sources like Rest API, SFTP, and WebDAV repositories. It is performant for our needs and allows our development staff to work in a familiar language for them, reducing our technical debt and improving our response time. We manipulate our data on the client and package it for export or import to our primary RDBMS solution. The extra data transformation tools SQLite has available made it an easy choice to make use of.
  • Direct data transformation from JSON/CSV to table
  • Easy to format data exported to desired layout and file type
  • Direct ingestion from Rest API
  • Familiar language syntax for SQL Server developers
  • Lack of procedures makes for convoluted data manipulation via nested triggers
  • Linked Server with MySQL/SQL Server would be very much appreciated
  • Basic Table manipulation, not drop and recreate
The portability and ease of use has us doing local development, and then shipping the database to production for implementation. This compact deliverable object is great. Until multiple developers need to access it at a time. It is a caveat, but we create a database per integration as it is easier to manage. Using a SQLite database to manage more than one integration or task is not something we would recommend.
Score 8 out of 10
Vetted Review
Verified User
I am a regular user of the SQLite database in my several iOS projects. Even other teams also using SQLite in my organization. It is fast and I can say easy to install in existing and new projects. It supports many cross-platforms as well like iOS, Android, MAC, windows as well. SQLite is fully open source and developers can modify it according to their use. SQLite database can be used for small to large scale projects. It is available for a long time in the market so it has a very large community and easy to get any type of help from StackOverflow.
  • It supports many cross-platform like iOS, Android, MAC, Windows projects
  • It is open source, and all code are public, developers can easily modify.
  • Easy to integrate in existing or new projects
  • In many case SQLite wont support Relational database feature.
  • If a application which scale-out very fast, for that type of project we need to use carefully
One SQLite database structure can be used by one or many other platforms like iOS, Android, even python as well. Many third-party ORM's and data layers are available in the market for SQLite, which make developer life easy. and it saves development time. It supports JSON and CSV files. SQLite can work with in-memory data or external files.
Score 10 out of 10
Vetted Review
Verified User
Our team is using SQLite for relational data storage for a web development project in dot.net. It is a lightweight database and very easy to manage using open-source tools.
  • Very easy to deploy and use.
  • Highly compatible with most of the popular programming languages.
  • Fast
  • Freeware
  • Lightweight database
  • Limitations in terms of data table size
  • No built in data encryption methods/ techniques
  • Not suitable for large applications
SQLite is best suited for scenarios where the team requires a lightweight relational data storage solution for small to medium-sized applications. Also, the team needs to keep the cost of the project minimal.
Score 9 out of 10
Vetted Review
Verified User
We use SQLite for file based data integration and ETL's. Only the IT Department uses SQLite due to its technical nature.
  • In memory database is extremely fast
  • Supports nearly all database capabilities
  • Lightweight footprint for using on many types of devices (mobile, PC, consumer devices)
  • Not multi-user due to its file locking design, but this supports its efficiency and speed strengths
  • Doesn't offer all join options typically available in standard databases
  • High repetitive single table writes can be problematic
[SQLite is well suited for:]
  • Mobile app development (storing user application data on a smart device)
  • Supporting fast ETL's in scripting type programs or console applications
  • Usable on embedded and low power hardware such as Raspberry Pi's
[SQLite is not well suited for:]
  • Would not be good as a centralized database where many clients are trying to read/write at the same time
Rogério Rodrigues | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
We use SQLite in our mobile projects by the Application development team.
SQLite solves our problem for storage in the APP database for offline data.
  • Xamarin.Forms Compatibility
  • Free
  • Easy Implementation
  • Limited for many rows
  • Documentation
SQLite is perfect for applications that need to save data offline and then synchronize. It is not good if you have many lines in the local SQLite base.
I haven't needed support yet.
Score 8 out of 10
Vetted Review
Verified User
SQLite is a perfect relational database management system if your database is not of Enterprise level in terms of size and security. I have been working on this for quite some time now and I also go back to this database whenever we are starting with a new project and the development phase is involved. It's lightweight, reliable and robust to meet any of the database needs that you may come across. The best thing is that it is a zero-configuration server-less database which means you do not require to dedicate any specific server or space in memory for this database. The ease and fastness of working on this is unparalleled.
  • The biggest one has to be that it is freeware and open source as well. It means for an entry level person who wants to learn relational database and even for a team in the early development stage where security and size of the data are not much, it is a perfect fit in those cases.
  • It requires no extra configuration or space because it a server-less installation and also done in just a few mins. So, installing this is never a blocker. It is the actual lite version of SQL as the name suggests and it very powerful and capable of doing all the things which SQL can do, but lacks some of the security and advanced features.
  • It prepares the data for us in a structured form in terms of Tables with a file size less than 1 Mb for the complete database entries. It saves us a lot of physical space.
  • It is the most suitable DB for Android systems because mobile apps do not have a lot of space or resources for a separate DB, but this one integrates with the whole ecosystem very nicely and we are able to make the most out of it and that too with a file lesser than 1 Mb in size.
  • Although it is excellent at what it does, you should be really careful and plan accordingly if you know that your database is going to scale at a huge level because it is not suitable of databases which are of Enterprise level and demands top-notch security and protection.
  • If your project involves multiple people working on the same database simultaneously, then that becomes a big problem, because it only allows single write at one time. You really need to be forward thinking in a manner to predict if this database will cater to all the needs of your project.
  • The most common difficulty with this is the lack of some of the basic functionality which is present in the other premier databases like Joints, Stored Procedure calls, Security and permission grants. If you do require all those things then you are better off not using this software.
  • Lastly, if you are using this in an Andriod App development cycle then also your options are limited because it does not integrate with PostgreSQL and MySQL.
As I have mentioned before, SQLite is suited best in development phases where the data table is not huge and the data security is also not the primary concern. Secondly, if you are working on an Android App development in that case also this is the best database by far which meets all your requirements without taking any space or memory.

It is not suited for applications where the Database is in Gigabytes or Terabytes. It is also not suited where you need to perform complex operations like Joins and Stored procedure calls and implying top security is the requirement of the project.
Score 8 out of 10
Vetted Review
Verified User
SQLite is used by the R&D department.
SQLite is the database engine we have chosen to handle data from the measurement device we developed, which runs an embedded Linux.
  • Our products are using SQLite in embedded Linux and in Windows software.
  • It is truly a stable cross-platform database.
  • The fact that it is a zero-configuration database engine, it is particularly a nice advantage when you work in the embedded world.
  • Being a single database file, it provides ease for those who need to quickly transfer data to someone else, or quickly browse data.
  • We experienced a problem due to a bug in the Linux library of SQLite.
  • All devices we already sold to our customers were impacted.
  • We could solve it by deploying the new library version which included the fix.
  • But as always, a piece of software is always better if it's bugs free.
I recommend the use of SQLite for embedded systems.
If you need to store a large amount of data, store blobs, use triggers, handle multiple accesses at the same time, and need to optimize indexes, then I would recommend using another database system.
SQLite should also be considered if the installation/configuration of a heavier database system is a problem.
  • Self-taught
Aaron Bratcher | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
SQLite provides a quick and easily accessible means to store data on the local mobile device. Because of it's broad inclusion in various devices, I can be sure of it's availability. When debugging applications, I can reliably get access to the contents of the file with a variety of available applications.
  • SQLite is readily available. It has been included with iOS for as long as there's been a way for 3rd party developers to write apps for it.
  • SQLite is small. When you think about the original iPhone and how little RAM it had, it's inclusion of SQLite is a testament to how little SQLite requires to work properly.
  • SQLite is fast. I've never had issues with the speed of data retrieval while using this product. When I think of local storage when creating an iOS app, the first thing I turn to is SQLite.
  • Better data recovery when the database becomes corrupt would be ideal. I've learned to minimize it by closing the database more frequently, but it can still happen.
  • Lack of built-in data encryption.
  • SQLite is a single-user DBMS. If a multi-user system is required, then an alternative is required.
Most situations for local data storage can be easily handled by SQLite. If data encryption is needed, there are special builds available. Moving beyond the mobile space, SQLite is not designed for extremely large quantities of data or multi-user . Special consideration should be made of how much data is expected over the life of the product use. It is also not designed for simultaneous multi-user access.
Marco Lostaunau | TrustRadius Reviewer
Score 5 out of 10
Vetted Review
Verified User
It was being used for low scale data storage. It was easy to use and integrate to our application which made it the best choice.
  • SQLite is in the public domain and does not require a license making it perfect for smaller startups.
  • A lot of documentation available which will make training developers new to SQLite transition easily
  • Public code makes it more accessible however it makes it more vulnerable to possible attacks
  • Not as easy to scale into a larger application compared to Microsoft Sql Management Studio
It's more suited for a start up on a budget since it presents a very good solution for data storage, maintenance and allows database engineers to structure the tables more efficiently and with scalability in mind. I would say it's less appropriate for bigger companies and firms with a more lax budget. I currently use Microsoft SQL Server management studio and the main reason why we use it is because of its security.
Return to navigation