2011-10-26 3 views
1

私はサーバーに接続するフラッシュプロジェクトを持っています。私はサーバーからのすべてのデータをXMLとして生のテーブルとして取得します。だから私はサーバーのロジッククライアント側を行う必要があります。 (理由を聞かないでください)フラッシュ/フレックスのデータ/データベースフレームワーク

私はこれを解決したフレームワークまたはコードベースを探しました。キーasfのマッピングを行うことができるフレームワーク。基本的には、データを格納し、SQLのようなデータの取得を処理するフレームワークです。

e。すべてのインスタンスを反復することなく、ユーザーIDを持つユーザーを取得できます。同じテーブルにもっと多くのIDがあると、これはもっと複雑になります。

そこにはフラッシュ用のデータフレームワークがありますか?

(多くのブラウザがそれをサポートしている場合、HTML 5 sqlLightは素晴らしいことだ)

答えて

0

私はあなたがおそらく既に知っていることを指摘する義務を感じる - そのようなテーブルを送信することは、安全でない無駄や種類の愚かです。 EDIT:あなたが実際にそれが:)

大丈夫です、その場合には、swfファイルにすべてのデータを必要でない限り、私はは、あなたはおそらくそれを自分で構築しなければならないので、そこには、このためのフレームワークが、ではないと思います。すべての行を配列に配置し、1つ以上のディクショナリをデータベースインデックスとして使用できるようにする必要があります。例:

trace(_data[_idIndex[100]]); 
trace(_data[_nameIndex["jonatan"]]); 

索引を作成するために必要な作業はすべてここにあります。

_nameIndex = new Dictionary(); 
_idIndex = new Dictionary(); 
for(var i:int = 0; i<_data.length; i++) { 
_idIndex[_data[i].id] = i; 
_nameIndex[_data[i].name] = i; 
} 

これが役に立ちます。

EDIT:一意でない識別子の場合は、索引自体ではなく、辞書に索引の配列を格納する必要があります。また、_data配列内のその場所ではなく、索引付けしているオブジェクトへの直接参照を格納することもできます。

+0

私が「尋ねないでください」と書いているので、サーバーバックアンダーはサーバーをデータベース操作(ジョイン)から保存する必要があります。私はそうでないと彼に説得することはできませんでした。私は、サーバー上に多くのユーザーがいることを知ることができます。ユーザーはハイエンドのマシンを持っているので、サーバーへの操作を実行してサーバーの負荷を節約することができます。私たちはテーブルからすべての情報を送信するわけではなく、一部は除外されているので、安全ではありません。 しかし、すでに存在するデータベース全体とSQL言語を作成しなければならないのは馬鹿です。だから私はそれを調べている。 私はそれをすることができるので、それはそうではありません。 – Christen

+0

@Christenは「データベース操作からサーバーを保存しようとしています(結合)」。走って、ただ走りなさい。私はDBAから一番遠いですが、データベースとしてデータベースを使用したくない場合は、他の分野での彼の能力について少し気になります。基本的に彼は、この種の問題に特化したソフトウェア(データベース)を、非常に一般的なソフトウェア(Flash VM)に置き換えています。 XMLは大丈夫ですが、ノード数が多くなると扱いにくくなります。ホイールを改革しないでください。 –

1

E4xでは、XMLに対してかなり洗練されたクエリを実行できます。チェックアウトhttp://dispatchevent.org/roger/as3-e4x-rundown/

+0

クールに見えます。しかし、それは辞書で調べるよりも速いのですか? thePeople.person。(@ name == "Roger Braunstein")年齢 対 thePeople ["Roger Braunstein"]年齢 – Christen

+0

メモリリークの可能性は低くなります。私は誰もがこれらの2つのベンチマークを横並びに掲載した場所を見ていません。 –

+0

Roger Braunsteinに2つのエントリがある場合(データベースの性質上かなりの可能性があります)、辞書方式では、 –

関連する問題