简体   繁体   中英

How to pass 'User Password' as parameter in function?

I'm trying to create users with a Function in Postgres. PostGres does not allow me to set a user's password with a parameter.

I've tried casting the parameter to all kinds of different types. Quoting literal on it. Nothing works.

Code:

CREATE OR REPLACE FUNCTION
    userlogic_add_user(user_password text)

    ALTER USER user_name WITH user_password;

The error msg I receive is Syntax related. But it has something to do with user_password.

The entire code obviously looks a bit different, but these are the parts of interest.

I guess you can always try executing a dynamic command :

EXECUTE ('ALTER USER ' || quote_ident(user_name) || ' WITH PASSWORD ' || quote_ident(user_password) || ';')

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM