1

いくつかの多対多テーブルを使用して、少し複雑なデータベース設定をしています。

このデータから XML ドキュメントを生成しようとしています。ある言語で名前が定義されていない場合は、(null を表示する代わりに) 別の言語から名前を取得しようとするなど、少しチェックがあります。

ループ内に多くのクエリがあるという問題があります。

パフォーマンスを向上させるために、何を遠ざけるか、何を使用するかなど、これに関するガイドラインはありますか?

cfoutput cfloop cfquery ?

4

2 に答える 2

4

ループ ロジックが基本的にデータ処理を行っている場合、たとえば、最初のクエリの値に基づいて、次のクエリのためにデータベースに戻るものを決定する場合、パフォーマンスのためにできる最善のことは、そのロジックをすべて削除することです。 CF コードを取得し、DB に配置します。データ処理にはDBを使用し、処理されたデータを処理して出力に変換するにはCFを使用します。

CF がデータ操作を実行する必要があるのは、データベース、リモート サービス、ファイル システム、別のデータベースなど、さまざまなソースからのデータを処理する必要がある場合のみです。基本的には、データベースがデータ処理を実行できない場合のみです。 ColdFusion を使用する必要があります。

于 2012-11-12T07:47:35.937 に答える
1

「ある言語で名前が定義されていない場合のように、別の言語から名前を取得しようとする(nullを表示する代わりに)」について。

クエリでこれを実行できるはずです。そこにあるほとんどすべてのデータベースには、合体機能があります。それらはすべてケース構造もサポートしています。状況に最も適した方法を選択するだけです。

于 2012-11-18T16:41:55.090 に答える