PL-SQLには、テーブル関数、オブジェクト、およびおそらく私がまだ発見していない他の新しい概念があります。モジュラーコードの良い習慣は何ですか?
しかし、ここでもまた、すぐに実行できる単純なコード生成(動的なpl-sql)もあります。
これらはコードの再利用に役立ちます。
テーブル関数とオブジェクトはモジュラーコードを作成するのに役立ちますが、それでも全体を削除するには不十分です(多分私はそれらの中で最高のものを使用していないかもしれません;今はデータであり、ロジックなし)。
コード生成ははるかに簡単で、重複したコードをもっと減らすことができます。しかし、実際のビジネスがコード生成ロジックの背後にあるものを読むのは難しいことです。
モジュラーで重複しないコードが必要です。私はプレーンコードの生成に固執すべきですか?それぞれの長所と短所は何ですか?
"コード生成"とは、動的PL/SQLを意味しますか?動的PL/SQLはその場所を持っていますが、何らかの理由で静的PL/SQLコードが不可能な場合にのみ、あなたがもちろんのこととして使用するべきではありません。 –
はい、動的plsqlです。私が望むものは、提案された制限(「コンパイル時にテキストが不明なSQL」または「静的SQLとしてサポートされていないSQL」)のいずれにも従わない。それはちょうど私が欲しいもののために簡単に思える。しかし、それはトラップですか?どのように私は多くの結合で巨大な選択を貼り付けてコピーしないでいくつかのインナーはちょうどテーブル名と列名をこことそこに変更することを選択? – Belun
動的SQLにはありますが、a)デバッグが難しく、b)維持が難しく、c)SQL構文のエラーが実行時にしか見つからないため、それを避ける傾向があります。他のものと同様に、それはツールであり、それは場所ですが、上記のTonyのように、実際に使用する必要があるかどうかを慎重に検討する必要があります。おそらく、あなたは後になっているロジックをカプセル化したビューや、実際には動的SQLを必要とするビューのセットを取り除くことができます。あなたの質問には、私たちが言うべき十分な情報がありません。 – Boneist