DATA STORAGE SQLITE
capacitor-data-storage-sqlite
CAPACITOR 5
Capacitor Data Storage SQlite Plugin is a custom Native Capacitor plugin providing a key-value permanent store for simple data of type string only to SQLite on IOS, Android and Electron platforms and to IndexDB for the Web platform.
Maintainers
Maintainer | GitHub | Social |
---|---|---|
Quéau Jean Pierre | jepiqueau |
Browser Support
The plugin follows the guidelines from the Capacitor Team
,
meaning that it will not work in IE11 without additional JavaScript transformations, e.g. with Babel.
Installation
npm install --save capacitor-data-storage-sqlite
npx cap sync
-
On iOS, no further steps are needed.
-
On Android, no further steps are needed.
-
On Web,
npm install --save localforage
- On Electron
npm install --save @capacitor-community/electron
npx cap add @capacitor-community/electron
Go to the Electron folder of your application
cd electron
npm install --save sqlite3
npm install --save-dev @types/sqlite3
npm run build
cd ..
npx cap sync @capacitor-community/electron
Then build YOUR_APPLICATION
npm run build
npx cap copy
npx cap copy @capacitor-community/electron
npx cap open ios
npx cap open android
npx cap open @capacitor-community/electron
ionic serve
Configuration
No configuration required for this plugin
Supported methods
Name | Android | iOS | Electron | Web |
---|---|---|---|---|
openStore (non-encrypted DB) | ||||
openStore (encrypted DB) | ||||
closeStore | ||||
isStoreOpen | ||||
isStoreExists | ||||
deleteStore | ||||
setTable | ||||
set | ||||
get | ||||
iskey | ||||
keys | ||||
values | ||||
filtervalues | ||||
keysvalues | ||||
remove | ||||
clear | ||||
isTable | ||||
tables | ||||
deleteTable | ||||
isJsonValid | ||||
importFromJson | ||||
exportToJson |
Documentation
Applications demonstrating the use of the plugin
Ionic/Angular
Ionic/React
React
Ionic/Vue
Vue
Usage
Dependencies
The IOS & Android code use SQLCipher allowing for database encryption.
The Android code is now based on androidx.sqlite
. The database is not closed anymore after each transaction for performance improvement.
You must manage the close
of the database before opening a new database.
The Web code use localforage
package to store the datastore in the Browser.
The Electron code use sqlite3
package
✨
Contributors Thanks goes to these wonderful people (emoji key):
Jean Pierre Quéau |
Matthew Burke |
Kevin van Schaijk |
Andy Garbett |
This project follows the all-contributors specification. Contributions of any kind welcome!