WebSQL синтаксис на IndexedDb

Имам приложение, което използва WebSQL. Искам да поддържам и IndexedDB (за браузъри без поддръжка на WebSql). Има ли някаква библиотека, която използва sql-синтаксис, но работи с indexedDB / LocalStorage във фонов режим?

Не искам да променям всичките си заявки и функции.

Всички библиотеки, които открих, използват синтаксис IndexedDb и поддържат WebSql. (Не е това, което ми трябва).

Благодаря :)


person Cracker0dks    schedule 13.02.2014    source източник
comment
Разгледайте jsstore.net. Той предоставя синтаксис, подобен на sql.   -  person Ujjwal Kumar Gupta    schedule 18.09.2017


Отговори (2)


Можете да използвате моята библиотека, ydn-db, за много проста sql заявка, която работи с всяка уеб база данни.

За почти пълна поддръжка за SQL вижте търговската библиотека SequelSphere js http://www.sequelsphere.com/docs/latest/doc/Supported%20SQL.html. За съжаление в момента изпълнението на заявката е в паметта. Ценообразуването е безобразно алчно.

person Kyaw Tun    schedule 16.02.2014

Можете да опитате Alasql JavaScript SQL библиотека с бази данни. Той поддържа всички важни SQL изрази и може да работи и с IndexedDB със SQL синтаксис.

Ето един пример:

<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

person agershun    schedule 14.12.2014