2012-05-12 10 views
3

IOS5でphonegap [cordova 1.7.0] sqliteを使用してデータベースを作成しました。 しかし、私は今このデータベースを私が既にオンラインサーバーに持っているものに切り替える必要があります。 これを実行する方法はありますか?Phonegapでオンラインデータベースとsqliteを接続する方法

ありがとうございます。

+0

ローカルデータベースの内容をサーバー上の内容に置き換えようとしていますか?または、ローカルデータベースの使用をやめて、リモートサーバーで常に代わりに使用することを検討していますか?そして、データベースのグローバルデータは、すべてのクライアントに対してのみ読み取られるのですか、それともユーザーごとのデータが格納されますか? –

答えて

2

私が正しく理解していれば、リモートsqliteデータベースに接続するためのデータベースアクセスを処理するために現在のロジックを使用したいと考えています。

このような使用はできません。 Cordovaは、iOSとAndroidに組み込まれたWebSQL(または独自の互換性のある実装を提供する)のサポートを使用しています。

あなたの問題に少なくとも2つの解決策があります。

  1. は、リモート・データベースへのアクセスを可能にし、クライアントとサーバー上でそれを同期させ、クライアント側の同期サービスを作成するサービスを作成します。この方法で、完全なオフラインサポートとデータがサーバーにバックアップされます。

  2. リモートsqliteデータベースにアクセスできるが、WebSQLインターフェイスを使用する独自のCordovaプラグインを作成します。私はあなたがiOS WebSQLの実装から現在のロジックのほとんどを再利用できると思うが、デバイス上のローカルsqliteファイルにアクセスする代わりに、サーバー上のデータベースを使用する。

1

いずれにしても、このようにすることができます。サーバー上にXMLファイルのdbaseを作成し、それを解析すると、xmlファイルの内容を読み取って既存のデータベースに変更を加えることができます。

+0

しかし、電話のギャップの使用はどこですか? –

+0

あなたは正確に何を達成したいのかをもっと詳しく知ることができますか?私たちには明らかではないplz彼のコメントにryanが言及したように詳細を与える。もしデータベース構造が同じであれば、言及したxmlを使用することができます。新しいレコードをチェックしたり、必要に応じてデータベース全体をリフレッシュしたりすることもできます。まあ、あなたもこのようにあなたの目標を達成することができます。 – Neji

2

データベースへのアクセスを提供するサーバー側アプリケーションを作成します。

2

Phonegap用のsqliteプラグインがあります。オンラインのsqliteが公開されている/ダウンロード可能な場合、Phonegapにdbファイルをダウンロードさせることができます(ダウンロードプラグインがあります)。カスタマイズしたsqliteプラグインでこのdbを使用できます。

+0

良いアイデア。そのプラグインの唯一の欠点は、それがiOS専用で、少し異なったAPIを持っていることです。 [Phonegap-SQLitePlugin](https://github.com/davibe/Phonegap-SQLitePlugin) – MeTTeO

+0

iOSとAndroid用のバージョンがあります。少なくともAndroidバージョンでは、WebSQL/Phonegap APIに固執しようとしています。しかし、ええ、それはより多くの仕事をliiiiiiiittleすることができます...(それは他の人がそれを正しくしなければならない時にはもう少し多くの仕事です?) – dda

関連する問題