SAPHIR - Toolkits Blog

Community Browser
Showing results for 
Search instead for 
Did you mean: 

Why SQLite toolkit for LabVIEW?

‎09-17-2010 03:22 AM
‎09-17-2010 03:22 AM

Using a database is more and more requested to manage information in your LabVIEW application. Unfortunately, most of client-server solutions are complex to configure and maintain. SQLite is certainly the right solution !

  • SQLite is a zero-configuration database.

SQLite does not need to be "installed" before using it. There is no "setup" procedure. There is no server to be started, stopped, nor configured. There is no need (with administrator privileges) to create a new database instance or assign permissions to users. SQLite uses no configuration file. Nothing needs to be done to tell the system that SQLite is running. No action is required to recover data access after system crash or power failure. There is nothing to troubleshoot.


SQLite just works !


Other database engines may run great once you get them going. But doing the initial installation and configuration can often be intimidating.

  • Database is stored in a single cross-platform disk file

A database in SQLite is a single disk file. Furthermore, the file format is cross-platform. A database that is created on one machine can be copied and used on a different machine with a different architecture. SQLite databases are portable across 32-bit and 64-bit machines and between big-endian and little-endian architectures.

The SQLite database file format is also stable. All releases of of SQLite version 3 can read and write database files created by the very first SQLite 3 release (version 3.0.0) going back to 2004-06-18. This is "backwards compatibility". The developers promise to maintain backwards compatibility of the database file format for all future releases of SQLite 3. "Forwards compatibility" means that older releases of SQLite can also read and write databases created by newer releases. SQLite is usually, but not completely forwards compatible.

The stability of the SQLite database file format and the fact that the file format is cross-platform combine to make SQLite database files an excellent choice as an Application File Format.


  • Implements most of SQL92

  • Sources are in the public domain

For these reasons and other features, well-known companies choose SQLite :

Adobe uses SQLite as the application file format for their Photoshop Lightroom product. SQLite is also a standard part of the Adobe Integrated Runtime (AIR). It is reported that Acrobat Reader also uses SQLite.
Apple uses SQLite for many functions within Mac OS-X, including Apple Mail, Safari, and in Aperture. Apple uses SQLite in the iPhone and in the iPod touch and in iTunes software.
The increasingly popular Dropbox file archiving and synchronization service is reported to use SQLite as the primary data store on the client side.
SQLite is the primary meta-data storage format for the Firefox Web Browser and the Thunderbird Email Readerfrom Mozilla.
We believe that General Electric uses SQLite in some product or another because they twice wrote to the SQLite developers requesting the US Export Control Number for SQLite. So presumably GE is using SQLite in something that they are exporting. But nobody (outside of GE) seems to know what that might be.
It is known that Google uses SQLite in their Desktop for Mac, in Google Gears, in the Android cell-phone operating system, and in the Chrome Web Browser. People are suspicious that Google uses SQLite for lots of other things that we do not know about yet. Engineers at Google have made extensive contributions to the full-text search subsystem within SQLite.
McAfee uses SQLite in its antivirus programs. Mentioned here.
It can inferred from traffic on the SQLite mailing list that at least one group within Microsoft is using SQLite in the development of a game program. No word yet if this game has actually been released or if they are still using SQLite.
The popular PHP programming language comes with both SQLite2 and SQLite3 built in.
SQLite comes bundled with the Python programming language since Python 2.5.
The REALbasic programming environment comes bundled with an enhanced version of SQLite that supports AES encryption.
There are multiple sightings of SQLite in the Skype client for Mac OS X and Windows.
Solaris 10 uses SQLite as the storage format for its Service Management Facility. Thus, Sun has essentially replaced the traditional unix /etc/inittab file with an SQLite database.
SQLite is an integral part of Symbian's operating system commonly found on high-end cellphones.
A representative of Toshiba wrote to the SQLite developers and requested the US Export Control Number for SQLite. We infer from this that Toshiba is exporting something from the US that uses SQLite, but we do not know what that something is.

Why not using SQlite in your own LabVIEW application !

More information concerning SQLite : official website and wikipedia

Comments
Member Jean-Louis
Member

Olivier,

It seems that ODBC drivers for SQLite are availables or will soon be available (not tested).

If I install the SQLite ODBC driver on my Windows PC and I want to access to an SQLite database it through LabVIEW, I should be able to use the LabVIEW database toolkit. Did you try this ?

What could be the gain of SQLiteVIEW toolkit in terms of performance and cross-platform compatibility ?

Jean-Louis Schricke, Mesulog

Member Olivier-JOURDAN Member
Member

Hello  Jean-Louis,

We have  not tested ODBC drivers for SQLite. We plan to compare performance and ease of use between ODBC/databaseToolkit versus SQLiteVIEW.

About SQLiteVIEW advantages, we can say that  :

     - it's  really "zero configuration" !

    - it runs on Linux and Mac OS (Mac OS not  supported yet but definitely possible).

    - it will be easily upgraded (just download last sqlite  version from http://www.sqlite.org/), so  we'll provide last SQLite release very fast.

Anyway, note that SQLite database typically fed  from a LabVIEW  test bench using SQLiteVIEW can be queried by any SQL compliant system including  ODBC utilities…

Member Rajesh_Nair
Member

With SQLite ODBC driver and databse ttolkit we can access SQLite database. With connection string we can connect to SQLite database and SQLIte database is very easy to use.

Regards

Rajesh R.

Member fmorandat
Member

Hi Rajesh,

Thanks for the tip.

  

SmartSQLVIEW for SQLite does not need installing any driver and implied efforts.

As simpler tools are relevant, we think the ready-to-use SmartSQLVIEW for SQLite is a valuable choice for

LabVIEW developpers who want to save developpment time and count on a tuned team.

Regards

Saphir team