2017-07-01 7 views
-1

注文、顧客、アイテムテーブルを含むmysqlデータベースを管理するアプリケーションを開発しています。このアプリは、社員が注文を表示、追加、削除するためのものです。サーバを解析するためにandroid appにmysqlデータベースをアップロードしてダウンロードするには

このデータベース全体をオンラインサーバーにアップロードして、すべての従業員がこのデータベースを電話機にダウンロードし、注文を追加/削除し、変更されたデータベースを中央データベースにアップロードできるようにします。これは、誰もがすべての変更された注文、顧客および顧客を見ることができるようにするためです。

私はそれをオンラインで調べ、パースサーバについて知っていましたが、私は現在のmysqlデータベースをアップロードしてダウンロードする方法を見つけることができません。私はアプリを開発し、ubuntuを実行するためにアンドロイドスタジオを使用しています。私がこれに慣れてきたら助けてください:)

+0

解析は現在開発中です。 Firebaseを見て、MySQL DBを完全に削除してください。 –

+0

私はすでにMySQLを使ってアプリケーションでデータベースを作成しており、アプリケーション全体はこのデータベースのみに基づいているため、MySQLを取り除くことはできません。また、オフラインでの使用のために、データベースをユーザーの電話に残しておきたい。何をすればよいでしょうか? –

+0

複雑な独自の同期プロセスを作成します。 Firebaseのようなものを使ってください –

答えて

1

ローカルの電話とサーバのデータベースを同期させたままデータベース全体をアップロードしたりダウンロードしたりすることではありません。サーバーにはMySQLデータベースがあり、電話機にはおそらくSQLiteデータベースがあります。 MysqlデータベースにCRUDアクションを許可するために書いたPHP Webサービスがあります。これらのアクションは、同期を維持するために電話機のJavaコードからこのWebサービスを呼び出して実行します。トランザクションのライフサイクルについて考えなければならないので、2人のユーザーが同時にレコードを更新しようとするとクラッシュすることはありません。これを手助けするフレームワークがありますが、レコードロックフラグとしてフィールドを使用できます。同期化のためのレコードレベルで作業することで、同期トラフィックを最小限に抑えます。

リアルタイム同期が複雑すぎる場合、仕事の性質上、従業員をCRDに制限して更新を避けることができます。これにより、夜間にバッチ同期処理を行うことが可能になり、簡単になります。

これはちょっとしたことですが、完全な答えではありませんが、先のタスクの有用なアイデアを与えるかもしれません。

関連する問題