将来设置用户的有效期至日期

时间:2017-11-20 20:34:20

标签: amazon-redshift

我试图查看是否有办法在未来三个月内自动设置用户的VALID UNTIL值,而无需输入文字日期。尝试以下方法:

alter user rchung set valuntil = dateadd(day,90,GETDATE());
alter user rchung set valuntil = select dateadd(day,90,GETDATE());

都因语法错误而失败。

alter user rchung valid until dateadd(day,90,GETDATE());

也因语法错误而失败。

任何人都有这方面的成功吗?

TIA, 富

1 个答案:

答案 0 :(得分:1)

看来这是对PostgreSQL方面的限制。

  

创建用户,就像Postgres中的几乎所有实用程序语句一样,   不做任何表达式评估---参数必须是   简单的文字常量。

VALID UNTIL programmatically in SQL

由于Amazon Redshift不支持像PostgreSQL这样的plpgsql,因此客户端脚本确实是唯一的选择。如果您正在使用psql的半现代版本(9.3+),则以下工作:

select dateadd(day,90,GETDATE()) as expiry; \gset
alter user myuser valid until :'expiry';