javascript - IndexedDb 上的 WebSQL 语法

标签 javascript html syntax indexeddb web-sql

我有一个使用 WebSQL 的应用程序。我也想支持 IndexedDB(对于不支持 WebSql 的浏览器)。是否有使用 sql 语法但在后台使用 indexedDB/LocalStorage 的库?

我不想更改我所有的查询和函数。

我找到的所有库都使用 IndexedDb 语法并支持 WebSql。 (不是我需要的)。

谢谢:)

最佳答案

你可以试试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 中使用这个示例

关于javascript - IndexedDb 上的 WebSQL 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21756622/

相关文章:

javascript - Mapbox/Leaflet .bottom 控件在 map 上方呈现并且看不见

javascript - Bamboo 建图生成

html - 在更改字体大小时,所有其他 div 位置都会受到干扰

jquery - 如何替换 HTML <select> 元素上的箭头按钮

swift if let statement with as?,但为什么要用问号?

javascript - 在 PhoneGap 应用程序中从服务器远程显示图像的最佳方式是什么

javascript - 我想要一个 javascript 中的颜色列表

javascript - 正则表达式仅替换每个匹配项的第一次出现

perl - Perl 中的 postfix for 循环未按预期工作

json - 无论如何要验证 jsonpath 的语法是否正确?