HTML5本地存储 & SQL

11
我了解HTML5的"localStorage"是一个键值存储,但我想知道是否有可用的JavaScript库提供更SQL-ish的API?

这篇帖子可能对您有所帮助。 - Leo Cai
6个回答

8

这些链接很有价值,谢谢!我还想添加一篇文章的链接,它提供了一个很好的视角来说明如何使用SQL进行浏览器存储 > http://blog.vlad1.com/2009/04/06/html5-web-storage-and-sql - JeroenEijkhof

5

我正在使用 Chrome 的 5.0.342.1 dev 版本。 - N 1.1
1
大约在2010年11月,该文档现在显示为“此文档曾在W3C推荐跟踪中,但规范工作已停止。” IndexedDB文档现在已经取代了它 - http://www.w3.org/TR/IndexedDB/。 - Kevin Hakanson

3

时间和潮水不断冲刷HTML5。似乎WebDatabase已过时,而indexDB正当红。以下是同一作者的更新文章链接:http://www.html5rocks.com/en/tutorials/indexeddb/todo/ - EBarr

1
你可以尝试使用Alasql。它支持标准SQL语言并将数据保存在内存或localStorage中。有几种方法可以使用Alasql与localStorage。下面是如何创建名为“Atlas”的localStorage数据库,并将其附加到Alasql作为“MyAtlas”,然后您可以像任何其他数据库一样使用表格。默认情况下,Alasql使用AUTOCOMMIT ON模式,因此它会在每个SQL语句之后将数据保存到localStorage中。
这是一个示例:
alasql('CREATE localStorage DATABASE IF NOT EXISTS Atlas');
alasql('ATTACH localStorage DATABASE Atlas AS MyAtlas');
alasql('CREATE TABLE IF NOT EXISTS MyAtlas.City (city string, population number)');
alasql('SELECT * INTO MyAtlas.City FROM ?',[[{city:'Vienna', population:1731000}, 
    {city:'Budapest', population:1728000}]]);
var res = alasql('SELECT * FROM MyAtlas.City');

jsFiddle中玩这个示例。运行此示例两到三次(或重新加载页面),您将看到表格中的行数如何增加。


1

请参阅4.11.客户端数据库存储- http://www.whatwg.org/specs/web-apps/2007-10-26/#sql - Kevin Hakanson


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接