On Tue, 21 Jan 2003, Marc SCHAEFER wrote:

> On Tue, Jan 21, 2003 at 11:16:15AM +0100, Alexandre Galletet wrote:
> 
> > Je précise que si le nom de l'utilisateur est codé en dur ça marche.
> > DROP USER pose le meme problème.
> > Il est clair que je peux réinventer la roue (INSERT INTO pg_shadow ...),
> > mais est-ce vraiement nécessaire ?

NON, grace à Marc,

La solution est la suivante :

CREATE FUNCTION manage_user_with_session2(name) RETURNS boolean AS ' 
 DECLARE 
 user1 ALIAS FOR $1 ; 
 sqlstr text ; 
BEGIN 
 sqlstr := ''CREATE USER "'' || user1 || ''"''; 
 EXECUTE sqlstr ; 
 RETURN TRUE ; 
END; 
' LANGUAGE 'plpgsql' ;

Merci
Alex

p.s. Le but était de créer un nouvelle utilisateur postgres chaque fois
qu'on insert une ligne dans une table et de supprimer cet utilisateur si
on efface la ligne correspondante.

--
http://www-internal.alphanet.ch/linux-leman/ avant de poser
une question. Ouais, pour se désabonner aussi.

Répondre à