Mam zestaw plików HTML i bazę danych SQLite, do której chciałbym uzyskać dostęp z przeglądarki, korzystając ze schematu file: //. Czy można uzyskać dostęp do bazy danych i tworzyć zapytania (i tabele) za pomocą JavaScript?
Mam zestaw plików HTML i bazę danych SQLite, do której chciałbym uzyskać dostęp z przeglądarki, korzystając ze schematu file: //. Czy można uzyskać dostęp do bazy danych i tworzyć zapytania (i tabele) za pomocą JavaScript?
Odpowiedzi:
Właściwie odpowiedź brzmi: tak. Oto przykład, jak możesz to zrobić: http://html5doctor.com/introducing-web-sql-databases/
Złe jest to, że ma bardzo ograniczone wsparcie ze strony przeglądarek.
Więcej informacji tutaj HTML5 IndexedDB, Web SQL Database i wojny przeglądarek
PS: Jak powiedział @Christoph, Web SQL nie jest już aktywnie utrzymywany, a grupa robocza ds. Aplikacji internetowych nie zamierza dalej go utrzymywać, więc spójrz tutaj https://developer.mozilla.org/en-US/docs/IndexedDB .
EDYTOWAĆ
Jak @clentfort powiedział, można uzyskać dostęp do bazy danych SQLite z JavaScript po stronie klienta za pomocą SQL.js .
Możesz użyć SQL.js, który jest biblioteką SQLlite skompilowaną do JavaScript i przechowywać bazę danych w lokalnym magazynie wprowadzonym w HTML5.
Moje rozwidlenie sql.js zostało teraz włączone do oryginalnej wersji w repozytorium krikena .
Dokumentacja dobry jest również dostępna na oryginalnym repo.
Należy użyć nowszej wersji sql.js . Jest to port sqlite 3.8, ma dobrą dokumentację i jest aktywnie utrzymywany (przeze mnie). Obsługuje przygotowane zestawienia i typ danych BLOB.
Jedną z najbardziej interesujących funkcji w programie HTML5
jest możliwość lokalnego przechowywania danych i umożliwienia działania aplikacji w trybie offline. Istnieją trzy różne interfejsy API, które obsługują te funkcje, a wybór jednego zależy od tego, co dokładnie chcesz zrobić z danymi, które planujesz przechowywać lokalnie:
Aby uzyskać więcej informacji, zobacz Wprowadzenie do interfejsów API magazynu HTML5
I jak używać
http://cookbooks.adobe.com/post_Store_data_in_the_HTML5_SQLite_database-19115.html
A co z używaniem czegoś takiego jak PouchDB? http://pouchdb.com/
IMHO, najlepszym sposobem jest wywołanie Pythona za pomocą POST przez AJAX i zrobienie wszystkiego, co musisz zrobić z bazą danych w Pythonie, a następnie zwrócenie wyniku do javascript. Obsługa json i sqlite w Pythonie jest niesamowita i jest w 100% wbudowana nawet w nieco nowszą wersję Pythona, więc nie ma bólu „zainstaluj to, zainstaluj to”. W Pythonie:
import sqlite3
import json
... to wszystko, czego potrzebujesz. Jest częścią każdej dystrybucji Pythona.
@Sedrick Jefferson poprosił o przykłady, więc (nieco spóźniony) napisałem tutaj samodzielne połączenie między Javascriptem a Pythonem.
python
) jest poza obszarem (przynajmniej dzisiaj, kiedy nie jest tak łatwo uruchomić Pythona z przeglądarki)
file:
schematycznie, masz na myśli komputer, na którym działa przeglądarka ?