More about this extension

What is this?
An extension that provides HTML5 Web SQL Database API binding to ODBC.
Why is it important?
Rather than being confined to SQLite for SQL Database access via Javascript, users and developers can now use the HTML5 Web SQL Database API against any ODBC-accessible RDBMS engine, such as: Oracle, Microsoft SQL Server, IBM DB2, IBM Informix, Sybase, Ingres, Progress, MySQL, PostgreSQL, Firebird, etc.
When OpenLink Virtuoso is the target DBMS, users and developers enjoy the following additional benefits:
* Virtual/Federated RDBMS access — A single ODBC connection to Virtuoso enables access to, and distributed joins across, all ODBC- or JDBC-accessible data sources
* RDF and Graph Database access — A single ODBC connection to Virtuoso enables SPARQL access to local and/or remote RDF-based Linked Data via SPASQL (SQL and SPARQL query language hybrid)
* Extra fine grained security via client-side X.509 certificates for identity verification courtesy of in-built support for the new HTTP Linked Data based WebID Protocol.
How do I use it?
Then start using the new Web Database APIs for data access from your HTML5 application as detailed at this URL: http://dev.w3.org/html5/webdatabase/
The following sample programs that use this API for SQL based RDBMS data access are also provided to enable the testing of basic connectivity and perform sample queries:

* http://wikis.openlinksw.com/dataspace/owiki/wiki/UdaWikiWeb/ODBCExplorerSampleProg – Sample Interactive Query program
* http://html5-webdb.s3.amazonaws.com/webdb-api/ODBCsample1.html  – Synchronous and Asynchronous test program.

How do I obtain ODBC Drivers?
* ODBC Driver Vendors (e.g., OpenLink Software) — http://uda.openlinksw.com
* Other 3rd-party Driver Vendors (including RDBMS engine providers) — http://www.SQLSummit.com/ODBCVend.HTM
Related Links:
* http://dev.w3.org/html5/webdatabase/ — Web SQL Database API Spec
* http://virtuoso.openlinksw.com
* http://iodbc.org/ — Platform-Independent iODBC Project Home Page
* http://esw.w3.org/Foaf%2Bssl – FOAF+SSL
* http://esw.w3.org/Foaf+ssl/FAQ — FOAF+SSL FAQ.

Change Log:

* Fixed problem with PostgreSQL, such that SQLGetInfo(SQL_IDENTIFIER_CASE)  metatdata call is used during the creation of the  NSIODBC_VERSION table.

* Fixed problem with read only DSNs, such that  SQLGetInfo(SQL_ACCESS_MODE) metadata call is used during the creation of the  NSIODBC_VERSION table.

Older Versions

  1. Version 1.0.0.1
    Compatible With
    Stable Builds

    ODBC Bridge for HTML5 Web SQL Database API

    Change Log:

    None

  2. Version 1.0.0.2
    Compatible With
    Stable Builds

    ODBC Bridge for HTML5 Web SQL Database API

    Change Log:

    Miscellaneous general updates

  3. Version 1.0.0.3
    Compatible With
    Stable Builds

    ODBC Bridge for HTML5 Web SQL Database API

    Change Log:

    Added Support for listing ODBC Data sources:

    WorkerUtils.getDataSources();  return array of Strings(list of DSN names)

    Added support for Database Catalog Calls:

    for nsISQLTransactionSync the following methods were added:

     nsISQLResultSet getCatalogs();

     nsISQLResultSet getTables(in DOMString catalog, in DOMString schema,
             in DOMString table, in DOMString tableType);

     nsISQLResultSet getColumns(in DOMString catalog, in DOMString schema,
             in DOMString table, in DOMString column);

     nsISQLResultSet getPrimaryKeys(in DOMString catalog, in DOMString schema,
             in DOMString table);

     nsISQLResultSet getForeignKeys(in DOMString pcatalog, in DOMString pschema,
             in DOMString ptable, in DOMString fcatalog, in DOMString fschema,
             in DOMString ftable);

     nsISQLResultSet getTypeInfo(in short dataType);

     nsISQLResultSet getProcedures(in DOMString catalog, in DOMString schema,
             in DOMString procedure);

     nsISQLResultSet getProcedureColumns(in DOMString catalog, in DOMString schema,
             in DOMString procedure, in DOMString column);

    for nsISQLTransaction (async transaction execution) the following methods were added:

     void getCatalogs(
         [optional] in nsISQLStatementCallback callback,
         [optional] in nsISQLStatementErrorCallback errorCallback);

     void getTables(in DOMString catalog, in DOMString schema,
             in DOMString table, in DOMString tableType,
                 [optional] in nsISQLStatementCallback callback,
                 [optional] in nsISQLStatementErrorCallback errorCallback);

     void getColumns(in DOMString catalog, in DOMString schema,
             in DOMString table, in DOMString column,
                 [optional] in nsISQLStatementCallback callback,
                 [optional] in nsISQLStatementErrorCallback errorCallback);

     void getPrimaryKeys(in DOMString catalog, in DOMString schema,
             in DOMString table,
                 [optional] in nsISQLStatementCallback callback,
                 [optional] in nsISQLStatementErrorCallback errorCallback);

     void getForeignKeys(in DOMString pcatalog, in DOMString pschema,
             in DOMString ptable, in DOMString fcatalog, in DOMString fschema,
             in DOMString ftable,
                 [optional] in nsISQLStatementCallback callback,
                 [optional] in nsISQLStatementErrorCallback errorCallback);

     void getTypeInfo(in short dataType,
                 [optional] in nsISQLStatementCallback callback,
                 [optional] in nsISQLStatementErrorCallback errorCallback);


     void getProcedures(in DOMString catalog, in DOMString schema,
             in DOMString procedure,
                 [optional] in nsISQLStatementCallback callback,
                 [optional] in nsISQLStatementErrorCallback errorCallback);

     void getProcedureColumns(in DOMString catalog, in DOMString schema,
             in DOMString procedure, in DOMString column,
                 [optional] in nsISQLStatementCallback callback,
                 [optional] in nsISQLStatementErrorCallback errorCallback);

  4. Version 1.0.0.4
    Compatible With
    Stable Builds

    ODBC Bridge for HTML5 Web SQL Database API

    Change Log:

    New Methods:
    
    WorkerUtils.getDataSources(); - returns a list of ODBC DSNs as an array of Strings
    
    AString nsISQLResultSetMetaData.getColumnName(in unsigned short aIndex); - returns column name of result set
    
    New DB catalog calls:
    
    1) for nsISQLTransactionSync the following methods were added:
    
    nsISQLResultSet getCatalogs();
    
    nsISQLResultSet getTables(in DOMString catalog, in DOMString schema,
    in DOMString table, in DOMString tableType);
    
    nsISQLResultSet getColumns(in DOMString catalog, in DOMString schema,
    in DOMString table, in DOMString column);
    
    nsISQLResultSet getPrimaryKeys(in DOMString catalog, in DOMString schema,
    in DOMString table);
    
    nsISQLResultSet getForeignKeys(in DOMString pcatalog, in DOMString pschema,
    in DOMString ptable, in DOMString fcatalog, in DOMString fschema,
    in DOMString ftable);
    
    nsISQLResultSet getTypeInfo(in short dataType);
    
    nsISQLResultSet getProcedures(in DOMString catalog, in DOMString schema,
    in DOMString procedure);
    
    nsISQLResultSet getProcedureColumns(in DOMString catalog, in DOMString schema,
    in DOMString procedure, in DOMString column);
    
    2) for nsISQLTransaction (async transaction execution) the following methods were added:
    
    void getCatalogs(
    [optional] in nsISQLStatementCallback callback,
    [optional] in nsISQLStatementErrorCallback errorCallback);
    
    void getTables(in DOMString catalog, in DOMString schema,
    in DOMString table, in DOMString tableType,
    [optional] in nsISQLStatementCallback callback,
    [optional] in nsISQLStatementErrorCallback errorCallback);
    
    void getColumns(in DOMString catalog, in DOMString schema,
    in DOMString table, in DOMString column,
    [optional] in nsISQLStatementCallback callback,
    [optional] in nsISQLStatementErrorCallback errorCallback);
    
    void getPrimaryKeys(in DOMString catalog, in DOMString schema,
    in DOMString table,
    [optional] in nsISQLStatementCallback callback,
    [optional] in nsISQLStatementErrorCallback errorCallback);
    
    void getForeignKeys(in DOMString pcatalog, in DOMString pschema,
    in DOMString ptable, in DOMString fcatalog, in DOMString fschema,
    in DOMString ftable,
    [optional] in nsISQLStatementCallback callback,
    [optional] in nsISQLStatementErrorCallback errorCallback);
    
    void getTypeInfo(in short dataType,
    [optional] in nsISQLStatementCallback callback,
    [optional] in nsISQLStatementErrorCallback errorCallback);
    
    

  5. Version 1.0.0.5
    Compatible With
    Stable Builds

    ODBC Bridge for HTML5 Web SQL Database API

    Change Log:

    Fixed wrong conversion of string parameters problem with DB catalog calls.









  6. Version 1.0.0.5
    Compatible With
    Stable Builds

    ODBC Bridge for HTML5 Web SQL Database API

    Change Log:

  7. Version 1.0.0.6
    Compatible With
    Stable Builds

    ODBC Bridge for HTML5 Web SQL Database API

    Change Log:

    Fixed issues with fetching of data types DATE, TIME, TIMESTAMP & LONGBINARY.

  8. Version 1.0.0.7
    Compatible With
    Stable Builds

    ODBC Bridge for HTML5 Web SQL Database API

    Change Log:

Write a Review

123