带加密功能的Postgresql 42883错误代码
好的,问题是我在数据库上做一个登录控制器。创建用户的部分功能如下所示:带加密功能的Postgresql 42883错误代码,postgresql,encryption,Postgresql,Encryption,好的,问题是我在数据库上做一个登录控制器。创建用户的部分功能如下所示: create or replace function crear_usuario(par_usuario varchar,par_clave text, par_nombre varchar,par_correo varchar) RETURNS integer AS $$ DECLARE existe int; clave_cript bytea; llave text; BEGIN
create or replace function crear_usuario(par_usuario varchar,par_clave text,
par_nombre varchar,par_correo varchar) RETURNS integer AS $$
DECLARE
existe int;
clave_cript bytea;
llave text;
BEGIN
/* 0:Insertado con exito | 1:Usuario ya registrado*/
select into existe count(id) from usuarios where usuario=$1;
if existe=0 then
select into llave 'encrypt key';
select into clave_cript encrypt(llave,$2,'3des');
insert into usuarios (usuario,clave,nombre,correo) values ($1,clave_cript,$3,$4);
end if;
RETURN existe;
END;
$$ LANGUAGE plpgsql RETURNS NULL ON NULL INPUT ;
错误显示在加密函数的行中,我在cli中自己测试了该函数
有什么想法吗?错误号清楚地告诉您没有找到函数encrypt
()
有可能
()功能是由您忘记在该数据库上安装的扩展提供的(通过encrypt
)CREATE extension
- 如果
()是一个自定义函数,则可能需要先运行其他脚本,在该函数之前创建该函数encrypt