# The SYSCS_CHECK_TABLE function

The `SYSCS_UTIL.SYSCS_CHECK_TABLE` function checks the consistency of a Derby table.

In particular, the `SYSCS_UTIL.SYSCS_CHECK_TABLE` function verifies the following conditions:

- Base tables are internally consistent
- Base tables and all associated indexes contain the same number of rows
- The values and row locations in each index match those of the base table
- All BTREE indexes are internally consistent

You run this function in an SQL statement, as follows:

    VALUES SYSCS_UTIL.SYSCS_CHECK_TABLE(SchemaName, TableName)

where SchemaName and TableName are expressions that evaluate to a string data type. If you created a schema or table name as a non-delimited identifier, you must present their names in all upper case. For example:

    VALUES SYSCS_UTIL.SYSCS_CHECK_TABLE('APP', 'CITIES')

The `SYSCS_UTIL.SYSCS_CHECK_TABLE` function returns a SMALLINT. If the table is consistent (or if you run `SYSCS_UTIL.SYSCS_CHECK_TABLE` on a view), `SYSCS_UTIL.SYSCS_CHECK_TABLE` returns a non-zero value. Otherwise, the function throws an exception on the first inconsistency that it finds.

For a consistent table, the following result is displayed:

    1
    -----
    1

    1 row selected

Parent topic: Checking database consistency
Related reference
Sample SYSCS_CHECK_TABLE error messages
Sample SYSCS_CHECK_TABLE queries