あらかじめ作成しておいた、SQliteのデータを、JavaScriptから
読むのは可能でしょうか。
ちなみに、JavaScriptkから新規に、SQliteのデータを作成するのは
可能です。
開発環境は、iPhone/Safari です。
いくつか見てみましたが、拡張機能でも任意のデータベースファイルを指定することはできなさそうです。
なので、正攻法でデータベースファイルを直接インストールすることは出来なさそうですが、
間接的な方法と、正攻法ではない方法の2つ方法を考えてみました。
ただ、普通に考えたら前者を取ると思います。上手く作ればオンラインとオフラインのハイブリッドとかデータ更新とかもやりやすくなりますし。
データファイルは拡張機能として同梱しても良いでしょうし、ネットからダウンロードしても良いかもしれません。
それを、初回のインストール作業として、テーブルが無ければテーブル作成と共に読み込んで流し込む。
プログレスバーか何かで明示的に行う方法もあれば、バックグラウンドで少しずつ行う方法もあるかもしれません。
http://d.hatena.ne.jp/os0x/20100610/1276119135
http://developer.apple.com/library/safari/#documentation/Tools/Conceptual/SafariExtensionGuide/ExtensionSettings/ExtensionSettings.html
javascriptでは無理な部分があるので、ネイティブコードで動くプラグインにSQLiteのライブラリを組み込んで、直接ファイルをコピーし、管理データベースを更新して、Client-side database storageとして登録してしまう。
もちろんこれは非正規な方歩ですので、不具合が発生する可能性がある、というよりマトモに動くかどうかもやってみなければ分からない所です。通常のsafariについては幾つか情報がありますが、iPhone版でも同じなのか検証する所からとなるでしょう。
http://hajimemasita.blogspot.com/2008/03/safari-31client-side-database-storage.html
https://github.com/steventroughtonsmith/MobileSafariPlugin
可能です.
Client-side database storage ですね。
これだと、クライアント側でデータ生成して保存する方法ですね。
あらかじめ、データベースファイルを作っておいて、読む方法を知りたいのです。
例えば、オフラインでも使える英和辞典のようなiPhoneアプリをJavaScriptで作成、などを考えています。
javascriptだけでというのは分からないです。すいません。
読み込むところはバックエンドでやったほうが楽な気がします。
いくつか見てみましたが、拡張機能でも任意のデータベースファイルを指定することはできなさそうです。
なので、正攻法でデータベースファイルを直接インストールすることは出来なさそうですが、
間接的な方法と、正攻法ではない方法の2つ方法を考えてみました。
ただ、普通に考えたら前者を取ると思います。上手く作ればオンラインとオフラインのハイブリッドとかデータ更新とかもやりやすくなりますし。
データファイルは拡張機能として同梱しても良いでしょうし、ネットからダウンロードしても良いかもしれません。
それを、初回のインストール作業として、テーブルが無ければテーブル作成と共に読み込んで流し込む。
プログレスバーか何かで明示的に行う方法もあれば、バックグラウンドで少しずつ行う方法もあるかもしれません。
http://d.hatena.ne.jp/os0x/20100610/1276119135
http://developer.apple.com/library/safari/#documentation/Tools/Conceptual/SafariExtensionGuide/ExtensionSettings/ExtensionSettings.html
javascriptでは無理な部分があるので、ネイティブコードで動くプラグインにSQLiteのライブラリを組み込んで、直接ファイルをコピーし、管理データベースを更新して、Client-side database storageとして登録してしまう。
もちろんこれは非正規な方歩ですので、不具合が発生する可能性がある、というよりマトモに動くかどうかもやってみなければ分からない所です。通常のsafariについては幾つか情報がありますが、iPhone版でも同じなのか検証する所からとなるでしょう。
http://hajimemasita.blogspot.com/2008/03/safari-31client-side-database-storage.html
https://github.com/steventroughtonsmith/MobileSafariPlugin
JavaScript + SQLite では、あらかじめ用意しておいたデータを読めないのが理解できました。今回は、あまり複雑な事をする余裕がないので、別に、data.js を作って、グローバル変数の、連想配列を用意して、データを入れておこうと思います。
データの性質的にはRDB向きだったのですが、Key-Valueに合うように、変更します。
JavaScript + SQLite では、あらかじめ用意しておいたデータを読めないのが理解できました。今回は、あまり複雑な事をする余裕がないので、別に、data.js を作って、グローバル変数の、連想配列を用意して、データを入れておこうと思います。
2012/01/27 16:12:03データの性質的にはRDB向きだったのですが、Key-Valueに合うように、変更します。