Вы используете пакет pgcrypto
неправильно, и, учитывая его запутанность, это не удивительно.Ваша текущая вставка выглядит нормально:
INSERT INTO users (user_id, nick_name, email, u_password)
VALUES
(87678655, 'Natali1990@', 'Natali@gmail.com',
CRYPT('@kjvfhjh88976', GEN_SALT('bf')));
Затем, чтобы аутентифицировать пользователя, используйте SELECT
, который выглядит примерно так:
SELECT u_password = CRYPT('@kjvfhjh88976', u_password)
FROM users
WHERE email = 'Natali@gmail.com';
Это вернет true, если пользователь ввелправильный пароль.Вы можете прочитать больше об этом в документации Postgres ;