CREATE USER
  
  SQL - Language Statements
 
 
  
   CREATE USER
  
  
   Creates a new database user
  
 
 
  
   1999-07-20
  
  
CREATE USER username
    [ WITH
     [ SYSID uid ]
     [ PASSWORD 'password' ] ]
    [ CREATEDB   | NOCREATEDB ] [ CREATEUSER | NOCREATEUSER ]
    [ IN GROUP     groupname [, ...] ]
    [ VALID UNTIL  'abstime' ]
  
  
  
   
    1998-09-21
   
   
    Inputs
   
   
    
     
      username
      
       
	The name of the user.
       
      
     
     
      uid
      
       
        The SYSID clause can be used to choose
        the Postgres user id of the user
        that is being created. It is not at all necessary that those
        match the UNIX user ids, but some people
        choose to keep the numbers the same.
       
       
        If this is not specified, the highest assigned user id plus one
        will be used as default.
       
      
     
     
      password
      
       
        Sets the user's password. If you do not plan to use password
        authentication you can omit this option, otherwise the user
        won't be able to connect to a password-authenticated server.
        See the chapter on client authentication in the
	Administrator's Guide for details on
        how to set up authentication mechanisms.
       
      
     
     
      CREATEDB
      NOCREATEDB
      
        
	These clauses define a user's ability to create databases.
	If CREATEDB is specified, the user being defined will
	be allowed to create his own databases. Using NOCREATEDB
	will deny a user the ability to create databases. If this
	clause is omitted,  NOCREATEDB is used by default.
       
      
     
     
      CREATEUSER
      NOCREATEUSER
      
       
	These clauses determine whether a user will be permitted to
	create new users himself. This option will also make the user
        a superuser who can override all access restrictions.
	Omitting this clause will set the user's value of this
	attribute to be NOCREATEUSER.
       
      
     
     
      groupname
      
       
	A name of a group into which to insert the user as a new member.
       
      
     
     
      abstime
      
       
	The VALID UNTIL clause sets an absolute time after which the
	user's password is no longer valid. 
	If this clause is omitted the login will be valid for all time.
       
      
     
    
   
  
  
  
   
    1998-09-21
   
   
    Outputs
   
   
    
     
      CREATE USER
      
       
	Message returned if the command completes successfully.
       
      
     
    
   
  
 
 
  
   1998-09-21
  
  
   Description
  
  
   CREATE USER will add a new user to an instance of 
   Postgres. Refer to the adminstrator's
   guide for information about managing users and authentication.
   You must be a database superuser to use this command.
  
  
   Use 
   to change a user's password and privileges, and  to remove a user.
   Use ALTER GROUP to add or remove the user from other groups.
   Postgres
   comes with a script 
   which has the same functionality as this command (in fact, it calls this command)
   but can be run from the command shell.
    
  
 
  
   Usage
  
  
   Create a user with no password:
CREATE USER jonathan
  
  
   Create a user with a password:
CREATE USER davide WITH PASSWORD 'jw8s0F4'
  
  
   Create a user with a password, whose account is valid until the end of 2001.
   Note that after one second has ticked in 2002, the account is not
   valid:
CREATE USER miriam WITH PASSWORD 'jw8s0F4' VALID UNTIL 'Jan 1 2002'
  
   
   Create an account where the user can create databases:
CREATE USER manuel WITH PASSWORD 'jw8s0F4' CREATEDB
  
 
 
 
  
   Compatibility
  
  
  
   
    1998-09-21
   
   
    SQL92
   
   
    There is no CREATE USER statement in SQL92.