Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Some questions

Former Member
0 Kudos

Hi,

1 Difference between Pooled, cluster & transparent tables?

2 give few names of transparent tables?

3. Give few names of cluster tables in sap?

4. Give few names of pooled tables in sap?

5 What is Primary key, foreign key ? what is primary index?

secondary index?

6. how many indexes can be created for a table?

7 what is a value table?

8 what is check table?

9 what are the components of a table?

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hi

<b>I. Transparent tables (BKPF, VBAK, VBAP, KNA1, COEP)</b>

Allows secondary indexes (SE11->Display Table->Indexes)

Can be buffered (SE11->Display Table->technical settings) Heavily updated tables should not be buffered.

<b>II. Pool Tables (match codes, look up tables)</b>

Should be accessed via primary key or

Should be buffered (SE11->Display Table->technical settings)

No secondary indexes

Select * is Ok because all columns retrieved anyway

<b>III. Cluster Tables (BSEG,KONV, BSEC)</b>

Should be accessed via primary key - very fast retrieval otherwise very slow

No secondary indexes

Select * is Ok because all columns retrieved anyway. Performing an operation on multiple rows is more efficient than single row operations. Therefore you still want to select into an internal table. If many rows are being selected into the internal table, you might still like to retrieve specific columns to cut down on the memory required.

Statistical SQL functions (SUM, AVG, MIN, MAX, etc) not supported

Can not be buffered

IV. Buffered Tables (includes both Transparent & Pool Tables)

While buffering database tables in program memory (SELECT into internal table) is generally a good idea for performance, it is not always necessary. Some tables are already buffered in memory. These are mostly configuration tables. If a table is already buffered, then a select statement against it is very fast. To determine if a table is buffered, choose the 'technical settings' soft button from the data dictionary display of a table (SE12). Pool tables should all be buffered.

Difference between a check table and a value table

<b>Value Table</b>

This is maintained at Domain Level.

When ever you create a domain , you can entered allowed values. For example you go to Domain SHKZG - Debit/credit indicator. Here only allowed values is H or S.

When ever you use this Domain, the system will forces you to enter only these values.

This is a sort of master check . To be maintained as a customization object. This mean that if you want to enter values to this table you have to create a development request & transport the same.

<b>Check table</b>

For example you have Employee master table & Employee Transaction table.

When ever an employee Transacts we need to check whether that employee exists , so we can refer to the employee master table.

This is nothing but a Parent & Child relationship . Here data can be maintained at client level , no development involved.

As per DBMS what we call foregin key table, is called as check table in SAP.

There is 1 more important Difference in Value Table and Check Table is that:

1. The contents of the check will be used as an input help(F4 Help) for a particular field on which a check table is assigned.

But the contents of Value Table are never used in Input Help.

The Heirarchy which decides from where to used the Input Help is:

1. Input help defined explicitly in ABAP Program or Dialog Module.

2. Input Help Attached to the referenced Database Table field.

3. Using the contents of Check Table as an input help if neither (1) or (2) help are there.

4. Input help from Fixed value or Value range given in Domain.

<b>Foreign key</b>

A foreign key creates a link between two tables T1 and T2. Every primary key field from T1 (check table) is assigned a field from table T2 (foreign key field). The fields from T2 assigned to primary key fields are marked as foreign key fields.

The most important function of the foreign key is the support of data integrity. The foreign key fields can only accept values which appear in the primary key of the check table. During input the values of the foreign key fields can thus be checked against the entries of the assigned key fields of the check table.

<b>Foreign keys</b> are also the foundation for defining lock objects, maintenance views and help views. These objects contain fields from several tables. All the tables used in such an object must be linked with foreign keys.

<b>Primary index :</b> Its the index which is automatically created for the PRIMARY KEY FIELD(S) of the table.

The primary index is always created automatically in the R/3 System. It consists of the primary key fields of the database table. This means that for each combination of fields in the index, there is a maximum of one line in the table. This kind of index is also known as UNIQUE.

Secondary index : Its created as and when required,

based upon other field(s) of the table,

on which search criteria is used in sqls.

<b>Secondary indexes</b> should contain columns that you use frequently in a selection, and that are as highly selective as possible. The fewer table entries that can be selected by a certain column, the higher that column’s selectivity. Place the most selective fields at the beginning of the index. Your secondary index should be so selective that each index entry corresponds to at most five percent of the table entries. If this is not the case, it is not worth creating the index. You should also avoid creating indexes for fields that are not always filled, where their value is initial for most entries in the table.

<b>Components of a Tables are:</b>

Attributes like Name and Delivery Class

Fields, its data elements , search helps, check tables etc

Technical settings like Data class and Size category

<b>Reward points for useful Answers</b>

Regards

Anji

4 REPLIES 4

Former Member
0 Kudos

It would be better if you search the SDN help or google your questions

Former Member
0 Kudos

Hi

<b>I. Transparent tables (BKPF, VBAK, VBAP, KNA1, COEP)</b>

Allows secondary indexes (SE11->Display Table->Indexes)

Can be buffered (SE11->Display Table->technical settings) Heavily updated tables should not be buffered.

<b>II. Pool Tables (match codes, look up tables)</b>

Should be accessed via primary key or

Should be buffered (SE11->Display Table->technical settings)

No secondary indexes

Select * is Ok because all columns retrieved anyway

<b>III. Cluster Tables (BSEG,KONV, BSEC)</b>

Should be accessed via primary key - very fast retrieval otherwise very slow

No secondary indexes

Select * is Ok because all columns retrieved anyway. Performing an operation on multiple rows is more efficient than single row operations. Therefore you still want to select into an internal table. If many rows are being selected into the internal table, you might still like to retrieve specific columns to cut down on the memory required.

Statistical SQL functions (SUM, AVG, MIN, MAX, etc) not supported

Can not be buffered

IV. Buffered Tables (includes both Transparent & Pool Tables)

While buffering database tables in program memory (SELECT into internal table) is generally a good idea for performance, it is not always necessary. Some tables are already buffered in memory. These are mostly configuration tables. If a table is already buffered, then a select statement against it is very fast. To determine if a table is buffered, choose the 'technical settings' soft button from the data dictionary display of a table (SE12). Pool tables should all be buffered.

Difference between a check table and a value table

<b>Value Table</b>

This is maintained at Domain Level.

When ever you create a domain , you can entered allowed values. For example you go to Domain SHKZG - Debit/credit indicator. Here only allowed values is H or S.

When ever you use this Domain, the system will forces you to enter only these values.

This is a sort of master check . To be maintained as a customization object. This mean that if you want to enter values to this table you have to create a development request & transport the same.

<b>Check table</b>

For example you have Employee master table & Employee Transaction table.

When ever an employee Transacts we need to check whether that employee exists , so we can refer to the employee master table.

This is nothing but a Parent & Child relationship . Here data can be maintained at client level , no development involved.

As per DBMS what we call foregin key table, is called as check table in SAP.

There is 1 more important Difference in Value Table and Check Table is that:

1. The contents of the check will be used as an input help(F4 Help) for a particular field on which a check table is assigned.

But the contents of Value Table are never used in Input Help.

The Heirarchy which decides from where to used the Input Help is:

1. Input help defined explicitly in ABAP Program or Dialog Module.

2. Input Help Attached to the referenced Database Table field.

3. Using the contents of Check Table as an input help if neither (1) or (2) help are there.

4. Input help from Fixed value or Value range given in Domain.

<b>Foreign key</b>

A foreign key creates a link between two tables T1 and T2. Every primary key field from T1 (check table) is assigned a field from table T2 (foreign key field). The fields from T2 assigned to primary key fields are marked as foreign key fields.

The most important function of the foreign key is the support of data integrity. The foreign key fields can only accept values which appear in the primary key of the check table. During input the values of the foreign key fields can thus be checked against the entries of the assigned key fields of the check table.

<b>Foreign keys</b> are also the foundation for defining lock objects, maintenance views and help views. These objects contain fields from several tables. All the tables used in such an object must be linked with foreign keys.

<b>Primary index :</b> Its the index which is automatically created for the PRIMARY KEY FIELD(S) of the table.

The primary index is always created automatically in the R/3 System. It consists of the primary key fields of the database table. This means that for each combination of fields in the index, there is a maximum of one line in the table. This kind of index is also known as UNIQUE.

Secondary index : Its created as and when required,

based upon other field(s) of the table,

on which search criteria is used in sqls.

<b>Secondary indexes</b> should contain columns that you use frequently in a selection, and that are as highly selective as possible. The fewer table entries that can be selected by a certain column, the higher that column’s selectivity. Place the most selective fields at the beginning of the index. Your secondary index should be so selective that each index entry corresponds to at most five percent of the table entries. If this is not the case, it is not worth creating the index. You should also avoid creating indexes for fields that are not always filled, where their value is initial for most entries in the table.

<b>Components of a Tables are:</b>

Attributes like Name and Delivery Class

Fields, its data elements , search helps, check tables etc

Technical settings like Data class and Size category

<b>Reward points for useful Answers</b>

Regards

Anji

Former Member
0 Kudos

1)Trasparent table has one to one relationship with the db table.

Pooled table has one to many relationship with db table. it has linear search,buffering is allowed,no foreign key relation ship.

Cluster table has one to many relationship with db table. it has binary search,buffering is not allowed, foreign key relation ship is maintained.

2) KNA1,VBAK,VBEP,VBAP,VBFA,LFA1,EKKO,EKPO,MARA.

3)BSEG

5) Primary Key that which have a uniqe value ex: employee No.

Foreign key : the field that is validated on which the foreign key relationship is maintained is foreign key.

6)we can create at max 15 secondary indexs.

7) when u r creating the fields in the table if u need to check the values of ranges at domain level that range is called value table.

😎 table that contain valid set of values called check table.

9) delivery class,size category,data class,technical setting

Former Member
0 Kudos

hi uday,

5. What is Primary key, foreign key ? what is primary index?

secondary index?

[Ans]: Primary key is the key which is maintained in the master table,

Foreing key is the key which is exists in the transaction table and always referes primarky key of master table. This key can be a primary key of that table aslo. When ever u search and sort the table based on the particular column that is priary index and some times we can do the same by using primary and secondary indexes. i.e. based two columns we can searf ir sort the data.

6. how many indexes can be created for a table?

[Ans] 16 indexex

7 what is a value table?

[ans] : a table which is frequently gets changed

8 what is check table?

[ans] : a table which is rarely gets changed

9 what are the components of a table?

domain, data elements, key