我有一个使用 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/