Why indexedDB Pro provider
JayData Pro product line is for professional users. Pro products come with support and extra features. The features have been selected and developed with business apps in mind. IndexedDb Pro extra features allow app developers to create business grade web sites and mobile applications. With professional support developers can save long hours of precious time and they can get fast bugfixes and patches if needed.
IndexedDb Pro provider provides all features that the community version provides with the same syntax, they are interchangeble. The Pro version can work both with the community version of JayData and with JayData Pro. However, the Pro version adds new features that are missing from the community version.
IndexedDb database engine provides ACID transaction support. With indexedDb Pro provider you can use this feature from JayData with a very simple syntax. Transactions can be used to isolate operations so your data won’t be corrupted. You can also use atomicity to be able to roll back transactions. You can read about transactions in this blogpost:
IndexedDb has built-in index support. With indexedDb Pro providers you can utilize this feature from JayData. Indices must be declared with the Entity Context declaration, JayData creates the indices on the database. IndexedDb automatically updates the indices when a new record is inserted or a record is updated or removed. However, indexedDb does not selects the best index to be used for a given query. JayData handles this, but it is essential for the developers to understand how it works and optimize the indices and the filters accordingly. It is the responsibility of the developer to declare the necessary indices, when a query can not use any index then the database must do a full table scan which can be slow, having too many indices might slow down inserts and updates and might take a lot of space.
How to use
When you purchase indexedDb Pro provider then you get a zip file. Copy IndexedDbProProvider.min.js file to your website or into your mobile application. In your html file, after you included jaydata.min.js include IndexedDbProProvider.min.js.
Then use JayData as with the community drivers, the only difference is that you can use the extra features.