Расположение базы данных Sqlite с помощью javascript в контексте браузера Chrome

#javascript #google-chrome #sqlite

#javascript #google-chrome #sqlite

Вопрос:

[ПРЕДВАРИТЕЛЬНОЕ ПРИМЕЧАНИЕ: я ориентируюсь только на браузер Chrome / Android по умолчанию]

Привет,

В настоящее время я использую инструкцию js var db = openDatabase ('db_name', '', 'db_desc', 2*1024*1024); для открытия базы данных sqlite и запуска своих транзакций.

Я нахожу файл sqlite, расположенный по адресу C:Documents and SettingsAdministratorLocal SettingsApplication DataGoogleChromeUser DataDefaultdatabasesfile__05 .

Могу ли я как-то явно указать местоположение моего файла базы данных sqlite (абсолютный путь или что-то еще, как указано здесь)?

Я вижу, что это можно сделать для приложений XUL, например var con = new SQLite("test.sqlite",{location:'Desk'}); .

Ответ №1:

Нет, вы не можете указать базу данных SQLite вручную.

Поддержка базы данных Web sql в Chrome привязывает базу данных к определенному источнику (схема, хост, комбинация портов) и прозрачно обрабатывает создание базы данных и разрешения. Это сильно отличается от SQLite API в XUL, но имеет то преимущество, что оно полезно в повседневных веб-приложениях, которым не требуются разрешения на доступ к произвольным битам файловой системы локального компьютера.

Комментарии:

1. Я мог бы немного отойти от своего предыдущего вопроса, а также прокомментировать с меньшими знаниями. Когда вы говорите о «преимуществе отсутствия требований к разрешениям», нет ли проблемы, если вы посещаете N количество веб-сайтов, каждый из которых пытается открыть базу данных с размером M МБ, таким, что (MxN) MB достигает предела (гипотетический может быть). Или chrome удалит некоторые файлы базы данных, чтобы сохранить ограничение по размеру без изменений? Это было моей заботой, и я почему-то хотел сохранить местоположение в другом месте (Примечание: Это предназначено для конкретных настольных клиентов, только если речь идет о безопасности)

2. Инженеры находятся в процессе внедрения системы квотирования для всех форм локально хранимых данных, которая позволит пользователям решать, сколько места веб-сайтам в целом следует занимать для работы. На данный момент, если у вас закончится место, создание базы данных просто завершится неудачей. Вскоре вы сможете определить, что сбой вызван превышением квоты, и соответствующим образом уведомить пользователя. Смотрите crbug.com/61676 для получения подробной информации о реализации / статусе.