# Setting database-wide properties

Database-wide properties, which affect a single database, are stored within the database itself. This allows different databases within a single Derby system to have different properties and ensures that the properties are correctly retained when a database is moved away from its original system or copied.

You should use database-wide properties wherever possible for ease of deployment and for security.

You set and verify database-wide properties using system procedures within SQL statements.

To set a property, you connect to the database, create a statement, and then use the `SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY` procedure, passing the name of the property and the value.

To check the current value of a property, you connect to the database, create a statement, and then use the `SYSCS_UTIL.SYSCS_GET_DATABASE_PROPERTY` function, passing in the name of the property.

If you specify an invalid value, Derby uses the default value for the property. (If you call the `SYSCS_UTIL.SYSCS_GET_DATABASE_PROPERTY` function, however, it displays the invalid value.)

See the Java DB Reference Manual for more information on how to use these system functions and procedures.

Parent topic: Setting Derby properties
Related concepts
Setting system-wide properties
Setting properties in a client/server environment
Making dynamic or static changes to properties