# SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY system procedure

Use the `SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY` system procedure to set or delete the value of a property of the database on the current connection.

For information about properties, see Derby property reference.

## Syntax

    SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY(IN KEY VARCHAR(128),
    IN VALUE VARCHAR(32672))

This procedure does not return any results.

If VALUE is not null, then the property with key value KEY is set to VALUE. If VALUE is null, then the property with key value KEY is deleted from the database property set.

If VALUE is an invalid value for the property, Derby uses the default value of the property, although `SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY` sets the invalid value.

## Execute privileges

If authentication and SQL authorization are both enabled, only the database owner has execute privileges on this procedure by default. See "Configuring user authentication" and "Configuring user authorization" in the Derby Security Guide for more information. The database owner can grant access to other users.

## JDBC example

Set the `derby.locks.deadlockTimeout` property to a value of 10:

    CallableStatement cs = conn.prepareCall
    ("CALL SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY(?, ?)");
    cs.setString(1, "derby.locks.deadlockTimeout");
    cs.setString(2, "10");
    cs.execute();
    cs.close();

## SQL example

Set the `derby.locks.deadlockTimeout` property to a value of 10:

    CALL SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY
    ('derby.locks.deadlockTimeout', '10')

Parent topic: Built-in system procedures
Related reference
SYSCS_UTIL.SYSCS_GET_DATABASE_PROPERTY system function