2014-02-13 32 views
1

我有一個使用WebSQL的應用程序。我也想支持IndexedDB(對於沒有WebSql支持的瀏覽器)。有沒有使用sql-syntax但在後臺使用indexedDB/LocalStorage的庫?IndexedDb上的WebSQL語法

我不想改變我所有的查詢和函數。

我發現的所有庫都使用IndexedDb語法並支持WebSql。 (不是我所需要的)。

謝謝:)

+0

這個例子玩看看http://jsstore.net/。它提供了sql語法。 –

回答

1

您可以嘗試Alasql JavaScript SQL數據庫庫。它支持所有重要的SQL 語句,並且可以與SQL語法一起使用IndexedDB。

下面是一個例子:

<script src='alasql.min.js'></script> 
<script> 
    var cityData = [{city:"Redmond", population:57530}, 
     {city:"Atlanta",population:447841}, 
     {city:"San Francisco", population:837442}]; 

    // Create IndexdDB database and fill it with data from array 
    alasql('CREATE INDEXEDDB DATABASE IF NOT EXISTS geo;\ 
     ATTACH INDEXEDDB DATABASE geo; \ 
     USE geo; \ 
     DROP TABLE IF EXISTS cities; \ 
     CREATE TABLE cities; \ 
     SELECT * INTO cities FROM ?', [cityData], function(){ 

     // Select data from IndexedDB 
     alasql('SELECT COLUMN * FROM cities WHERE population > 100000 ORDER BY city DESC', 
      [],function(res){ 
       document.write('Big cities: ', res.join(',')); 
     }); 
    }); 
</script> 

可以在jsFiddle