VERIFY Statement

Checks that table data matches the specified data type for each column.

Syntax

VERIFY table-name

or

VERIFY [ * || column-name{,column-name} ...]FROM table-name{WHERE search-condition}

where,

VERIFY table-name is equivalent to VERIFY * FROM table-name

Syntax Elements

table-name =
{owner-name.}table-identifier

owner-name =
The SQL user-id of the creator of the table.

table-identifier =
The name of the table to alter.

column-name =
{[table-name || correlation-name].}column-identifier

correlation-name =
Any user-defined name (except a Reserved Word) starting with a letter and comprising up to 49 letters, underscores and/or numbers. Letters are case sensitive.

column-identifier
Any user-defined name (except a Reserved Word) starting with a letter and comprising up to 49 letters, underscores and/or numbers. Letters are case sensitive.

search-condition =
Refer to the topic SQL Search Condition.

Result

When run at TCL, the VERIFY statement reports all detected data errors. When run from a PC application it exits on the first error.

Missing Values

If the table contains exploded multivalues and/or subvalues, and the attributes concerned contain different numbers of multivalues and/or subvalues, the following message will be displayed:

Error detected in Table 'table': File 'file', Item 'item'
Data = 'data'
Column 'column' has fewer values or sub-values than another exploded column.
Any index based on this column may not reference all Table rows.

Note that this is only a problem if an index has been defined on the column concerned.

The ?missing values? problem is described in detail in Application Index Design.

Comment

SQL is much more rigorous than Reality in the way it handles data. In Reality, an occasional item with invalid or excessively long data may not cause a problem to the English processor. SQL on the other hand demands that the column data matches the data type defined for each column. A mismatch may be enough to abort an SQL report.