Support For Sqlite

I got to the data management functionality in my project. I do everything for the first time so I will make a lot of mistakes and ask stupid questions. I apologize in advance.

So, first of all, I decided to check out what Wappler itself has to offer. I created a new mobile app test project and moved to Database manager. There I tried to create a new connection by creating a new database In Sqlite format:

after selecting the directory and name:

But when I click save, Wappler just hangs on this:

I decided to conduct this experiment because I didn’t find any topics that fully cover the question “does Wappler support Sqlite in mobile projects?”. So my question is: am I doing something wrong or is it just that Wappler doesn’t support Sqlite in projects without a server?

SQLite should work fine in web projects having server connect.

We don’t have a mobile integration yet.

Btw a much better mobile option will be PouchDB that will be coming soon as App Connect component and integration. So will work fine on mobile.

And it can automatically sync with a live couchdb server!

Yes, I started my research by studying approaches to managing data in mobile apps and syncing them. And one of the main approaches was PouchDB/CouchDB server. However, with a more detailed study, this approach was not as simple as we would like.

First, to establish communication between the server and the application, you need to integrate both on the application side and on the server side. Second, and most incomprehensible to me, it is necessary to organize interaction between CouchDB server and my main Mysql database, because PouchDB/CouchDB is a nosql format and data is stored there not as records in a table, but as documents.

All this seemed to me extremely cumbersome and confusing. So I decided to try alternative options. My plan was to connect to the Sqlite application and write a fairly simple query to my server. This request will send parameters recorded in the application database (Sqlite). On the server, this data will be processed (which can be done very conveniently and simply in Wappler right now) and a response will be sent to the application in the form of an array of records that need to be updated/added to the Sqlite database.

See also:

Hey George, maybe you and your team will take a look at WatermelonDB, which is based on SQLite, but has synchronization module included, which can be used to create offline web/mobile apps and has 7.5k like on github and is actively maintained. This is a tutorial how a weight tracker mobile apps was created https://foysal.it/posts/watermelondb-offline-data-sync. Now that wappler has support to Apps Flow, a true client data store like sqlite would be very welcome.
Or if you want to go the nosql way, rxdb (https://github.com/pubkey/rxdb with 15.5k likes) which is based on pouchdb and has also a graphql plugin, would be very welcome too.

PS. Forgotten to add that ionicframework.com team released a few weeks ago a secured, encrypted data store solution based on SQLite for mobile/electron apps, but don’t know the licensing terms: https://ionicframework.com/blog/announcing-ionic-secure-storage-secure-reliable-high-performance-data-access/

1 Like

Interesting showcase.

Yes you can build a similar database synchronization with server connect delivering you the new records and SQLite to store them locally, once we add the local SQLite support.

Now you can use SQLite for your mobile and desktop projects: Using Local Databases in Mobile and Desktop apps

This topic was automatically closed after 2 days. New replies are no longer allowed.