REVOKE
  
  SQL - Language Statements
 
 
  
   REVOKE
  
  
   Revokes access privilege from a user, a group or all users.
  
 
 
  
   1999-07-20
  
  
REVOKE privilege [, ...]
    ON object [, ...]
    FROM { PUBLIC | GROUP ER">gBLE> | username }
  
  
   
    1998-09-24
   
   
    Inputs
   
   
    
     
      privilege
      
       
	The possible privileges are:
	
	 
	  SELECT
	  
	   
	    Privilege to access all of the columns of a specific
	    table/view.
	   
	  
	 
	 
	  INSERT
	  
	   
	    Privilege to insert data into all columns of a
	    specific table.
	   
	  
	 
	 
	  UPDATE
	  
	   
	    Privilege to update all columns of a specific
	    table.
	   
	  
	 
	 
	  DELETE
	  
	   
	    Privilege to delete rows from a specific table.
	   
	  
	 
	 
	  RULE
	  
	   
	    Privilege to define rules on table/view.
	    (See 
	    ).
	   
	  
	 
	 
	  ALL
	  
	   
	    Rescind all privileges.
	   
	  
	 
	
       
      
     
     
      object
      
       
	The name of an object from which to revoke access.
	The possible objects are:
	
	 
	  
	   table 
	  
	 
	 
	  
	   view 
	  
	 
	 
	  
	   sequence
	  
	 
	 
	  
	   index
	  
	 
	
       
      
     
     
      group
      
       
	The name of a group from whom to revoke privileges.
       
      
     
     
      username
      
       
	The name of a user from whom revoke privileges. Use the PUBLIC keyword
	to specify all users.
       
      
     
     
      PUBLIC
      
       
	Rescind the specified privilege(s) for all users.
       
      
     
    
   
  
  
   
    1998-09-24
   
   
    Outputs
   
   
    
     
      
CHANGE
       
      
       
	Message returned if successfully.
       
      
     
     
      
ERROR
       
      
       
	Message returned if object is not available or impossible
	to revoke privileges from a group or users.
       
      
     		  
    
   
  
 
 
  
   1998-09-24
  
  
   Description
  
  
   REVOKE allows creator of an object to revoke permissions granted
   before, from all users (via PUBLIC) or a certain user or group.
  
  
   
    1998-09-24
   
   
    Notes
   
   
    Refer to psql \z command for further information about permissions 
    on existing objects:
    
Database    = lusitania
+------------------+---------------------------------------------+
|  Relation        |        Grant/Revoke Permissions             |
+------------------+---------------------------------------------+
| mytable          | {"=rw","miriam=arwR","group todos=rw"}      |
+------------------+---------------------------------------------+
Legend:
     uname=arwR -- privileges granted to a user
     group gname=arwR -- privileges granted to a GROUP
     =arwR -- privileges granted to PUBLIC
		  
     r -- SELECT
     w -- UPDATE/DELETE
     a -- INSERT
     R -- RULE
     arwR -- ALL
    
   
   
    
     Currently, to create a GROUP you have to insert 
     data manually into table pg_group as:
     
INSERT INTO pg_group VALUES ('todos');
CREATE USER miriam IN GROUP todos;
     
    
   
  
 
 
  
   Usage
  
  
   Revoke insert privilege from all users on table
   films:
   
REVOKE INSERT ON films FROM PUBLIC;
  
  
  
   Revoke all privileges from user manuel on view kinds:
     
REVOKE ALL ON kinds FROM manuel;
   
  
 
 
  
   Compatibility
  
  
   
    1998-09-01
   
   
    SQL92
   
   
    The SQL92 syntax for REVOKE
    has additional capabilities for rescinding
    privileges, including those on individual columns in tables:
    
     
      
       
REVOKE { SELECT | DELETE | USAGE | ALL PRIVILEGES } [, ...]
    ON object
    FROM { PUBLIC | username [, ...] } { RESTRICT | CASCADE }
REVOKE { INSERT | UPDATE | REFERENCES } [, ...] [ ( column [, ...] ) ]
    ON object
    FROM { PUBLIC | username [, ...] } { RESTRICT | CASCADE }
       
      
      
       
	Refer to
	
	for details on individual fields.
       
      
     
     
      
       
REVOKE GRANT OPTION FOR privilege [, ...]
    ON object
    FROM { PUBLIC | username [, ...] } { RESTRICT | CASCADE }
       
      
      
       
	Rescinds authority for a user to grant the specified privilege
	to others.
	Refer to
	
	for details on individual fields.
       
      
     
    
   
   
    The possible objects are:
    
     
      [ TABLE ] table/view
     
     
      CHARACTER SET character-set
     
     
      COLLATION collation
     
     
      TRANSLATION translation
     
     
      DOMAIN domain
     
    
   
    
    If user1 gives a privilege WITH GRANT OPTION to user2,
    and user2 gives it to user3 then user1 can revoke
    this privilege in cascade using the CASCADE keyword.
   
   
    If user1 gives a privilege WITH GRANT OPTION to user2,
    and user2 gives it to user3 then if user1 try revoke
    this privilege it fails if he/she specify the RESTRICT
    keyword.