Adds a column of the specified type to the given record group. When a record group is created dynamically (at run time), you can specify a column's data length semantics as a fifth parameter to this Built-in. It can take values of 'BYTE' or 'CHAR' (which are valid only when the datatype is CHAR), or null. A value of null in a CHAR column mapping indicates that the data length semantics is to be taken from the environment variable NLS_LENGTH_SEMANTICS.
FUNCTION ADD_GROUP_COLUMN
(recordgroup_id RecordGroup,
groupcolumn_name VARCHAR2,
column_type NUMBER);
FUNCTION ADD_GROUP_COLUMN
(recordgroup_name VARCHAR2,
groupcolumn_name VARCHAR2,
column_type NUMBER);
FUNCTION ADD_GROUP_COLUMN
(recordgroup_id, RecordGroup
groupcolumn_name VARCHAR2,
column_type NUMBER,
column_width NUMBER);
FUNCTION ADD_GROUP_COLUMN
(recordgroup_name VARCHAR2,
groupcolumn_name VARCHAR2,
column_type NUMBER,
column_width NUMBER);
FUNCTION ADD_GROUP_COLUMN
(recordgroup_id, RecordGroup
groupcolumn_name VARCHAR2,
column_type NUMBER,
column_width NUMBER);
FUNCTION ADD_GROUP_COLUMN
(recordgroup_name VARCHAR2,
groupcolumn_name VARCHAR2,
column_type NUMBER,
column_width NUMBER);
FUNCTION ADD_GROUP_COLUMN
(recordgroup_id, RecordGroup
length_semantics
VARCHAR2,
column_type NUMBER,
column_width NUMBER);
FUNCTION ADD_GROUP_COLUMN
(recordgroup_name VARCHAR2,
length_semantics VARCHAR2,
column_type NUMBER,
column_width NUMBER);
Built-in Type unrestricted function
Enter Query Mode yes
Returns GroupColumn
CHAR_COLUMN Specify if the column can only accept VARCHAR2 data.
DATE_COLUMN Specify if the column can only accept DATE data.
LONG_COLUMN Specify if the column can only accept LONG data.
NUMBER_COLUMN Specify if the column can only accept NUMBER data.
Error Conditions:
An error is returned under the following conditions:
/*
** Built-in: ADD_GROUP_COLUMN
** Example: Add one Number and one Char column to a new
** record group.
*/
PROCEDURE Create_My_Group IS
rg_name VARCHAR2(15) := 'My_Group';
rg_id RecordGroup;
gc_id GroupColumn;
BEGIN
/*
** Check to see if Record Group already exists
*/
rg_id := Find_Group( rg_name );
/*
** If Not, then create it with one number column and one ** Char column
*/
IF Id_Null(rg_id) THEN
rg_id := Create_Group( rg_name );
gc_id := Add_Group_Column(rg_id, 'NumCol',NUMBER_COLUMN);
gc_id := Add_Group_Column(rg_id, 'CharCol',CHAR_COLUMN,15);
END IF;
END;