digest(data text, type text) returns bytea;
n'est pas une syntaxe valide.
Je recommande d'utiliser bcrypt
Au lieu. Aucune définition de fonction supplémentaire n'est requise :
INSERT into "login" (login, password, employee_id)
VALUES ('email',crypt('password', gen_salt('bf'));
Plus tard...
UPDATE table SET password = crypt('password',gen_salt('bf'))
Et vérification du mot de passe :
SELECT ... FROM table
WHERE password is NOT NULL
AND password = crypt('password-to-test',password);
Bcrypt est recommandé par logiciel artisanal et Jeff Atwood . La documentation officielle de pgcrypto peut également être intéressant.