インフリー技術情報発信ブログ

ERP(SAP)導入コンサルティング、ABAP開発、ホームページ制作、WEBシステム構築などを手掛ける、株式会社インフリーです。

DBテーブル

DBテーブルについて

SAPには、3種類のテーブルタイプが存在します。

・透過テーブル
・プールテーブル
・クラスタテーブル

●透過テーブルとは・・・

一番よく使用されるテーブルタイプです。
Add-On開発では、99%がこのテーブルタイプではないでしょうか。

クラスタテーブル、プールテーブルとの違い:
・ABAPディクショナリと同じ構造で、DBテーブルが登録されています。
以下が同じ
・キー定義
・項目数
・各項目属性 などなど・・
・2次索引が登録できます。
・Select文で、内部結合・外部結合が使用できます。

●プールテーブルとは・・・

例:「Annn」条件マスタや「T001T」カスタマイズテーブルなどなど
テーブルプールに割り当てられたテーブルのことです。
テーブルプールには、複数プールテーブルが割り当てられ、
DB上は、テーブルプールにデータが登録されています。

複数のプールテーブルのデータが、どのようにテーブルプールに登録されているかというと
プールテーブルの1行1行が、それぞれテーブルプールの1行となっていて、
内部結合ではなく、単純に複数のテーブルがまとまっているだけです。

●クラスタテーブルとは・・・

例:「BSEG」会計伝票明細
テーブルクラスタに割り当てられたテーブルのことです。
テーブルクラスタには、複数クラスタテーブルが割り当てられ、
DB上は、テーブルクラスタにデータが登録されています。

さて、プールテーブルとは何が違うのかというと。。。

クラスタテーブルは、プライマリキーで内部結合された状態で
複数テーブルがまとまって登録されています。

■プールテーブルとクラスタテーブルの共通点
・キー項目以外の項目は、ほとんどが文字列結合された状態で1項目に登録されています。
・上記理由により、キー以外の項目を抽出条件とするとパフォーマンス悪化の要因になります。
・NativeSQLでは使用できません。
・Select文で、外部結合・内部結合できません。

インフリー技術情報発信ブログ © 2013 Frontier Theme