SQL$HELP_OLD72.HLB  —  ALTER  USER
    Modifies an entry for the specified user name. The modifications
    take effect on the next database connection after the ALTER USER
    statement is committed.

1  –  Environment

    You can use the ALTER USER statement:

    o  In interactive SQL

    o  Embedded in host language programs to be precompiled

    o  As part of a procedure in an SQL module

    o  In dynamic SQL as a statement to be dynamically executed

2  –  Format

  ALTER USER --+--> <username> --++------------------------+--->
               +--> PUBLIC ------+++-> alter-user-opts --+-+
                                   +----------<----------+

  alter-user-opts =

  -+-> ACCOUNT -----+--> LOCK ----+----------------------------------+->
   |                +--> UNLOCK --+                                  |
   +-> IDENTIFIED EXTERNALLY ----------------------------------------+
   +-> RENAME TO ------> <new-username> -----------------------------+
   +-> COMMENT IS --+--> '<string>' ---------+-----------------------+
   |                +-------- / <------------+                       |
   +-> NO PROFILE ---------------------------------------------------+
   +-> PROFILE <profile_name> ---------------------------------------+

3  –  Arguments

3.1  –  ACCOUNT

    Syntax options:

    ACCOUNT LOCK | ACCOUNT UNLOCK

    The ACCOUNT LOCK clause disables access to the database by the
    user for whom the ALTER USER statement is being applied. The
    ACCOUNT UNLOCK clause allows the user access to the database.

3.2  –  COMMENT_IS

    Adds a comment about the user. SQL displays the text of the
    comment when it executes a SHOW USERS statement. Enclose the
    comment in single quotation marks (') and separate multiple lines
    in a comment with a slash mark (/).

3.3  –  IDENTIFIED_EXTERNALLY

    Indicates that the user will be authenticated through the
    operating system.

3.4  –  PROFILE

    Syntax options:

    PROFILE | NOPROFILE

    Identifies a new profile for assignment to the user and replaces
    any previously assigned profile. The specified profile name must
    be the name of an existing profile.

    NOPROFILE removes any assigned profile from the user. No error is
    returned if a profile is not currently assigned.

3.5  –  PUBLIC

    The PUBLIC user in the database. This entry gives you control
    over anonymous users who access the database.

3.6  –  RENAME_TO

    Changes the user name and, if a security profile exists, assigns
    the security profile associated with the old user name to the new
    user name. This might be used, for example, when a person's name
    changes (as through marriage), and, therefore, his or her account
    on the operating system is changed accordingly. The new-username
    must not currently exist in the database.

    When the ALTER USER command is issued, the existing user name is
    removed from the database and replaced with the new-username. If
    SECURITY CHECKING is INTERNAL, then subsequent SHOW PROTECTION
    statements will display the new name for the user, and all GRANT
    and REVOKE statements will require the new-username. The new-
    username is not visible to other sessions until the transaction
    containing the ALTER USER command is committed.

    See the RENAME for further discussion.

3.7  –  username

    An existing user name in the database.

4  –  Examples

    Example 1: Renaming a User

    SQL> create user KELLYN
    cont>   identified externally
    cont>   comment is 'User: Edward "Ned" Kelly';
    SQL>
    SQL> -- The alternate name must exists at the operating system level
    SQL> alter user KELLYN rename to N_KELLY;
    %RDB-E-NO_META_UPDATE, metadata update failed
    -RDMS-E-NOSUCHPRF, unknown profile user or role
    SQL>
    SQL> -- Use the new corporate user-id naming scheme
    SQL> alter user KELLYN
    cont>   rename to NKELLY;

    Example 2: Adding a profile to a user

    This example creates a new profile that defines the DEFAULT
    transaction and then assigns a profile to the user. The next time
    the user attaches to the database, the START DEFAULT TRANSACTION
    statement will use the defined profile instead of the standard
    READ ONLY default.

    SQL> create profile READ_COMMITTED
    cont> default transaction read write isolation level read committed wait 30;
    SQL> show profile READ_COMMITTED
          READ_COMMITTED
          Default transaction read write wait 30
            Isolation level read committed
    SQL> alter user JAIN profile READ_COMMITTED;
    SQL> show user JAIN;
          JAIN
          Identified externally
          Account is unlocked
          Profile: READ_COMMITTED
          No roles have been granted to this user
Close Help