【问题标题】:Web SQL database in Chrome isn't preserved among tabs and sessionsChrome 中的 Web SQL 数据库未在选项卡和会话中保留
【发布时间】:2015-01-15 13:35:24
【问题描述】:

当我在 Chrome 中访问我的 Web 应用程序时,它会使用以下命令创建一个 Web SQL 数据库:

window.openDatabase('dbName', '1.0', 'database', -1);

我可以立即看到 Chrome 开发工具 -> 资源 -> Web SQL 中列出的数据库,并且在创建表并填充数据后,它都正确显示。

但是当我重新加载应用程序或在不同的选项卡中输入它时,数据库未在 Web SQL 列表中列出。 为什么?

【问题讨论】:

  • WebSQL 已被弃用,不保证能以任何方式工作。
  • 谢谢。是的,我知道这一点。这是一个依赖 sqlite 插件的 Cordova 移动应用程序。在开发时,我们在带有 Ripple 的 Chrome 中运行它。所以使用 Web SQL 是很自然的事情。

标签: javascript google-chrome web-sql


【解决方案1】:

终于找到了原因。我的应用程序没有在加载时立即到达@window.openDatabase@,而是在特定事件之后。显然,Chrome 不会在 Web SQL 下显示数据库,除非它们被打开。

我从控制台再次运行以下命令或导致事件发生:

window.openDatabase('dbName', '1.0', 'database', -1);

数据库在开发工具中列出,所有表和数据都在不同的会话或选项卡中。

【讨论】:

    【解决方案2】:

    Web SQL 已贬值,但我希望苹果和谷歌在未来 10 年内保留它,因为它比第三次世界尝试的本地数据存储(他们称为 indexDB)要好一百万倍

    【讨论】:

    • 我笑得很开心。
    猜你喜欢
    • 1970-01-01
    • 2012-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-21
    • 1970-01-01
    • 2016-07-31
    • 2014-03-11
    相关资源
    最近更新 更多