Format
DEFINE RECORD record-name
[ DESCRIPTION IS /*text*/ ] [ AUDIT IS /*text*/ ]
[ record-property ] ...
[ constraint-clause ] ... .
{ included-name-clause }
{ local-field-clause }
{ structure-name-clause } ... .
{ }
{ variants-clause }
END [ record-name ] RECORD .
1 – Parameters
1.1 – record-name
Specifies the record element you are creating.
1.2 – text
Adds information. Within the DESCRIPTION clause, this is
information documenting the record element; within the AUDIT
clause, it is a history list entry. Valid delimiters are /* */ or
double quotation marks (" ").
You can use Japanese to document comments in the DESCRIPTION or
AUDIT clause for a field. To do this, use the SET CHARACTER_SET
command, and set the character_set of the session to DEC_KANJI.
1.3 – record-property
Adds a property to the record element. See rec-properties for the
record properties CDO provides.
1.4 – constraint-clause
Specifies a condition that affects adding or modifying data to
the database table (CDO record). CDO provides syntax for record
constraints, including specification of NOT NULL, PRIMARY KEY,
FOREIGN KEY, UNIQUE, and CHECK (arbitrary search condition
constraint) for fields and records. See the DEFINE
RECORD_Constraint command for more information.
1.5 – included-name-clause
Allows you to include existing field definitions and record
definitions within record elements. See the DEFINE
RECORD_Included_Name command for more information.
1.6 – local-field-clause
Allows you to create local field definitions within record
elements. Describes the attributes of the local field. See the
DEFINE RECORD_Local_Field command for more information.
1.7 – structure-name-clause
Creates structure definitions within record elements. See the
DEFINE RECORD_Structure_Name command for more information.
1.8 – variants-clause
Creates variants definitions within record elements. See the
DEFINE RECORD_Variants command for more information.
2 – Description
The DEFINE RECORD command creates a record element.
If you supply a record name that is already used for a record
element in your default directory, CDO creates a new version of
the existing record definition.
The DEFINE RECORD command evaluates the record name you supply
to determine if it is a logical name. If the record name is a
logical name, CDD translates it. In some cases, the translation
of the logical name for the record may not be a valid name
for a record definition, and CDO will not create the record
definition. For example, if you have defined JOE as a logical
name that translates to MYNODE::[RICHIE], CDD translates the
symbol JOE. The following DEFINE RECORD command fails because
MYNODE::[RICHIE] is not a valid name:
CDO> DEFINE RECORD JOE.
%CDO-F-ERRDEFINE, error defining object
-CDD-F-NOTADIC, Does not contain a CDO dictionary:
MYNODE::
If this error occurs, deassign the logical name with the same
name as the object, and perform the operation again. To avoid
this logical name conflict, use unique names that represent the
type of entity you are naming.
3 – Examples
CDO> DEFINE RECORD EDUCATION_RECORD.
cont> BADGE_NUMBER.
cont> BACHELOR_DEGREE.
cont> MASTER_DEGREE.
cont> DOCTORATE_DEGREE.
cont> END RECORD.
In this example, the DEFINE RECORD command creates the
EDUCATION_RECORD record definition from four existing field
definitions.