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