#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 для получения подробной информации о реализации / статусе.