База данных веб-SQL или индексированный API баз данных... или оба?

HTML5 localStorage, в то время как отличный шаг в правильном направлении, является довольно неполным для моих нужд; его прославленный 1-мерный массив.

В современные браузеры встроены две конкурирующие базы данных на стороне клиента.

Кто-нибудь написал и опубликовал мета-библиотеку для обеих этих служб? Схожая с тем, как dojox.storage используется для проксирования различных плагинов (http://dojotoolkit.org/api/1.3/dojox/storage/manager) было бы здорово.

Кроме того, каков был ваш опыт использования одного из этих двух "стандартов"?

Ответ 1

На самом деле в современных браузерах не встроены две конкурирующие базы данных на стороне клиента, стандарт веб-SQL был прекращен, а в будущих версиях браузеров будет только (*) индексироваться. Firefox будет иметь его в 4.0, Chrome будет когда-нибудь, IE будет иметь его через некоторое время, и Opera (так я и слышал) получил ее в 11.50

(*) Я говорю только, но я готов поспорить, что WebKit продолжит поддерживать веб-SQL в течение некоторого времени, учитывая, что там существует значительное существующее использование, особенно на целевых материалах iOS.

Мое личное мнение заключается в том, что не благословение SQLite как веб-стандарта - это хорошо, но IndexedDB - это не то, чтобы его напрямую заменить. Это слишком низкий уровень, чтобы быть очень удобным для разработчиков переднего плана, чтобы думать так же, как и SQL (если вы когда-либо делали это в "SQL-Studio Studio", "Index Execution" ), в основном это то, что вы видите там за исключением без удобной схемы помощи помощи). Еще не посвятив этому серьезному куску времени, я еще не смог понять, как написать полезное приложение с помощью IndexedDB. Я чувствую, что он не будет взлетать, пока мы не увидим что-то вроде jQueryDB или, возможно, jsHibernate.

Тем временем, если значительная часть ваших пользователей будет основана на WebKit, придерживайтесь Web SQL.

Ответ 2

Я просто задавал себе тот же вопрос.

Бывает, что здесь доступен pollyfill (транзакции еще не реализованы, но если вам это не нужно, это может быть отличный выбор!):

http://blog.nparashuram.com/2012/06/indexeddb- polyfill.html

Прямая ссылка Github: https://github.com/axemclion