Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql “设置”;有效期至;具有计算时间戳的值_Sql_Postgresql - Fatal编程技术网

Sql “设置”;有效期至;具有计算时间戳的值

Sql “设置”;有效期至;具有计算时间戳的值,sql,postgresql,Sql,Postgresql,我想创建用户或更改密码,并在当前时间内计算时间戳。 例如: 当然这是无效的: 错误:时区为“%NOW()+interval 1 month”的时间戳类型的输入语法无效 我不熟悉postgresql,但通过快速的谷歌搜索,您似乎需要以下信息: CURRENT_DATE + INTERVAL '1 month'; 像CREATE USER这样的实用程序命令不接受表达式,只接受文本。您需要动态SQL DO $do$ BEGIN EXECUTE format($$CREATE USER myus

我想创建用户或更改密码,并在当前时间内计算时间戳。 例如:

当然这是无效的:

错误:时区为“%NOW()+interval 1 month”的时间戳类型的输入语法无效


我不熟悉postgresql,但通过快速的谷歌搜索,您似乎需要以下信息:

CURRENT_DATE + INTERVAL '1 month';

CREATE USER
这样的实用程序命令不接受表达式,只接受文本。您需要动态SQL

DO
$do$
BEGIN
   EXECUTE format($$CREATE USER myuser WITH PASSWORD 'password12345678' VALID UNTIL %L$$, NOW() + interval '1 month');
END
$do$;
详细说明:

是,但“有效期至”不接受此类输入创建密码为“password12345678”的用户cdb,有效期至“当前_日期+间隔”1个月”;错误:“1”行1处或附近出现语法错误:…rd12345678“有效期至”当前日期+间隔“1个月”;
DO
$do$
BEGIN
   EXECUTE format($$CREATE USER myuser WITH PASSWORD 'password12345678' VALID UNTIL %L$$, NOW() + interval '1 month');
END
$do$;