Можно ли получить доступ к базе данных SQLite из JavaScript?
У меня есть набор HTML-файлов и база данных SQLite, к которой я хотел бы получить доступ из браузера, используя схему file://. Можно ли получить доступ к базе данных и создавать запросы (и таблиц) с помощью JavaScript?
6 ответов
на самом деле ответ-да. Вот пример того, как вы можете это сделать:http://html5doctor.com/introducing-web-sql-databases/
плохо то, что он с очень ограниченной поддержкой браузеров.
подробнее здесь в HTML5 индексированные базы данных, базы данных Web SQL и войны браузеров
PS: Как сказал @Christoph Web SQL больше не находится в активном обслуживании, и рабочая группа по веб-приложениям не намерена поддерживайте его дальше так смотрите здесь https://developer.mozilla.org/en-US/docs/IndexedDB.
редактировать
как сказал @clentfort, вы можете получить доступ к базе данных SQLite с помощью клиентского JavaScript с помощью SQL.js.
можно использовать SQL.js который является sqllite lib, скомпилированным в JavaScript и хранящим базу данных в локальном хранилище, представленном в HTML5.
актуальный ответ
моя вилка sql.js теперь объединен в оригинальная версия, на репо крикена.
на хорошая документация также доступен в исходном РЕПО.
оригинальный ответ (устаревшее)
вы должны использовать новая версия sql.js. Это порт sqlite 3.8, имеет хорошая документация и активно поддерживается (по мне). Он поддерживает подготовленные операторы и тип данных BLOB.
одна из самых интересных особенностей в HTML5
- это возможность хранить данные локально и разрешить приложению работать в автономном режиме. Существует три различных API, которые имеют дело с этими функциями, и выбор одного зависит от того, что именно вы хотите сделать с данными, которые вы планируете хранить локально:
- веб-хранилище: для базового локального хранилища с парами ключ/значение
- автономное хранилище: использует манифест для кэширования целых файлов в автономном режиме использовать
- Web база данных: для хранения реляционных баз данных
для получения дополнительной информации см. представляем API хранения HTML5
и как использовать
http://cookbooks.adobe.com/post_Store_data_in_the_HTML5_SQLite_database-19115.html
IMHO, лучший способ-вызвать Python с помощью POST через AJAX и сделать все, что вам нужно сделать с БД в Python, а затем вернуть результат в javascript. поддержка json и sqlite в Python потрясающая, и она на 100% встроена в даже слегка последние версии Python, поэтому нет "установить это, установить это" боль. В Python:
import sqlite3
import json
...это все, что тебе нужно. Это часть каждого дистрибутива Python.
@Sedrick Jefferson попросил примеры, поэтому (несколько запоздало.) я написал:--6-->автономный туда и обратно между Javascript и Python здесь.