SYSCS_UTIL.SYSCS_CREATE_USER system procedure

The SYSCS_UTIL.SYSCS_CREATE_USER system procedure adds a new user account to a database.

This procedure creates users for use with NATIVE authentication. For details about NATIVE authentication, see derby.authentication.provider and "Using NATIVE authentication" in the Derby Developer's Guide.

If NATIVE authentication is not already turned on when you call this procedure:

Syntax

SYSCS_UTIL.SYSCS_CREATE_USER(IN USERNAME VARCHAR(128),
IN PASSWORD VARCHAR(32672))

No result set is returned by this procedure.

USERNAME
A user name that is case-sensitive if you place the name string in double quotes. This user name is an authorization identifier. See "Authorization identifiers, user authentication, and user authorization" in the Derby Developer's Guide for more information about how these names are treated.
PASSWORD
A case-sensitive password.

Execute privileges

If authentication and SQL authorization are both enabled, only the database owner has execute privileges on this procedure by default. See "Using NATIVE authentication," "Enabling user authentication," and "Setting the SQL standard authorization mode" in the Derby Developer's Guide for more information. The database owner can grant access to other users.

JDBC example

Create a user named FRED:

CallableStatement cs = conn.prepareCall
("CALL SYSCS_UTIL.SYSCS_CREATE_USER(?, ?)");
cs.setString(1, "fred");
cs.setString(2, "fredpassword");
cs.execute();
cs.close();

Create a user named FreD:

CallableStatement cs = conn.prepareCall
("CALL SYSCS_UTIL.SYSCS_CREATE_USER(?, ?)");
cs.setString(1, "\"FreD\"");
cs.setString(2, "fredpassword");
cs.execute();
cs.close();

SQL example

Create a user named FRED:

CALL SYSCS_UTIL.SYSCS_CREATE_USER('fred', 'fredpassword')

Create a user named FreD:

CALL SYSCS_UTIL.SYSCS_CREATE_USER('"FreD"', 'fredpassword')
Related reference
SYSCS_UTIL.SYSCS_DROP_USER system procedure
SYSCS_UTIL.SYSCS_MODIFY_PASSWORD system procedure
SYSCS_UTIL.SYSCS_RESET_PASSWORD system procedure