【问题标题】:Sqlite database location via javascript in the context of Chrome browser在 Chrome 浏览器的上下文中通过 javascript 定位 Sqlite 数据库
【发布时间】:2011-08-27 19:38:51
【问题描述】:

[前注:我只针对 chrome/android 默认浏览器]

嗨,

我目前正在使用 js 语句 var db = openDatabase ('db_name', '', 'db_desc', 2*1024*1024); 打开 sqlite 数据库并运行我的事务。

我在C:\Documents and Settings\Administrator\Local Settings\Application Data\Google\Chrome\User Data\Default\databases\file__0\5找到了sqlite文件。

我能否以某种方式明确指出我的 sqlite 数据库文件的位置(绝对路径或提到的 here)?

我看到这可以为XUL applications 完成,例如var con = new SQLite("test.sqlite",{location:'Desk'});.

【问题讨论】:

    标签: javascript google-chrome sqlite


    【解决方案1】:

    不,您不能手动指定 SQLite 数据库。

    Chrome 中的 Web sql 数据库支持将数据库沙箱化到特定来源(架构、主机、端口组合),并透明地处理数据库的创建和权限。它与 XUL 中的 SQLite API 完全不同,但它的优点是可以在日常 Web 应用程序中使用,这些应用程序不需要访问本地计算机文件系统的任意位的权限。

    【讨论】:

    • 我可能会从我之前的问题中走出来一点,也可以用较少的知识发表评论。当您谈论“不需要权限的优势”时,如果您访问 N 个网站,每个网站都试图以 M MB 大小打开数据库,使得 (MxN) MB 达到限制(假设可能),是否存在问题。或者chrome会删除一些数据库文件以保持大小限制不变?这是我关心的问题,并且想把这个位置保留在其他地方(注意:这仅针对特定的桌面客户端,前提是它有关于安全性的问题)
    • 工程师正在为所有形式的本地存储数据实施配额系统,让用户可以决定网站通常应该使用多少空间。目前,如果空间不足,数据库创建将失败。很快,您将能够确定失败是由于达到配额,并适当地向用户发送消息。有关实施细节/状态,请参阅crbug.com/61676。
    猜你喜欢
    • 1970-01-01
    • 2019-05-19
    • 1970-01-01
    • 1970-01-01
    • 2017-05-02
    • 1970-01-01
    • 2011-02-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多