2010-05-17 5 views
3

Je viens d'apprendre comment utiliser la base de données SQLite pour le stockage local dans un navigateur web Webkit (par exemple Google Chrome ou Apple Safari) en utilisant l'API Javascript. Par exemple l'application "Sticky Notes".Comment écrire des fonctions SQLite personnalisées en Javascript dans un navigateur Webkit?

Cependant, je sais que SQLite a une fonction appelée sqlite_create_function() qui vous permet d'ajouter à la volée des fonctions personnalisées à votre instance de SQLite qui peuvent ensuite être utilisées dans des requêtes SQL. Cette fonction est décrite au sqlite.org.

Je sais aussi que vous pouvez appeler un équivalent de cette API dans Ruby comme décrit here. QUESTION: Quelqu'un peut-il me montrer comment faire ceci en Javascript - écrire une fonction personnalisée en Javascript qui peut être liée à la base de données SQLite à l'exécution pour être appelée par le moteur SQLite, et tout dans un navigateur Webkit?

+0

+1: Hmm, j'ai eu un putain de bon coup d'oeil et je ne vois aucune documentation. Exemples de fonctionnalités de base, oui. Documents d'API complets, non. Cela n'aide pas qu'il semble que les WHATWG ne soient pas sûrs si cela devrait être quelque chose qu'ils approuvent et qu'Apple dit "regardez là-bas pour les docs". Ce truc doit être mis en évidence! –

+0

@Donal - Pouvez-vous m'envoyer des exemples de code de travail ... peut-être comme une réponse à ma question? –

+0

N ° :-(Ou du moins pas en javascript, comme je n'en ai pas. (Je pourrais google, mais vous pourriez aussi.) –

Répondre

1

De surfer sur le web, il semble que Apple est la seule entreprise qui offre toute sorte de documentation de l'interface SQLite par Webkit. C'est au apsw.googlecode.com.

Dans ce document, ils montrent comment utiliser l'API Javascript pour ouvrir & fermer des bases de données, exécuter des requêtes et manipuler les résultats. Cependant, il n'y a pas de documentation sur l'équivalent Javascript de sqlite3_create_function. Cependant, je leur ai envoyé une question à ce sujet et j'espère obtenir une réponse.

Questions connexes