digest(data text, type text) returns bytea;
er ikke gyldig syntaks.
Jeg anbefaler at bruge bcrypt
i stedet. Der kræves ingen yderligere funktionsdefinitioner:
INSERT into "login" (login, password, employee_id)
VALUES ('email',crypt('password', gen_salt('bf'));
Senere...
UPDATE table SET password = crypt('password',gen_salt('bf'))
Og tjekker adgangskoden:
SELECT ... FROM table
WHERE password is NOT NULL
AND password = crypt('password-to-test',password);
Bcrypt anbefales af Crafted Software og Jeff Atwood . De officielle pgcrypto-dokumenter kan også være af interesse.