digest(data text, type text) returns bytea;
är inte giltig syntax.
Jag rekommenderar att du använder bcrypt
istället. Inga ytterligare funktionsdefinitioner krävs:
INSERT into "login" (login, password, employee_id)
VALUES ('email',crypt('password', gen_salt('bf'));
Senare...
UPDATE table SET password = crypt('password',gen_salt('bf'))
Och kontrollera lösenordet:
SELECT ... FROM table
WHERE password is NOT NULL
AND password = crypt('password-to-test',password);
Bcrypt rekommenderas av Crafted Software och Jeff Atwood . De officiella pgcrypto-dokumenten kan också vara av intresse.