2017-11-20 3 views
0

리터럴 날짜를 입력하지 않고도 앞으로 3 개월 후에 사용자의 유효 기간 (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

는 PostgreSQL의 측면에서 한계가 있음을 보인다. 꽤 많은 포스트 그레스의 모든 유틸리티 문, 어떤 식 계산을하지 않을 것 같은

는 매개 변수 간단한 문자 상수해야 ---, 사용자를 만듭니다.

VALID UNTIL programmatically in SQL

아마존 Redshift에 PostgreSQL을 같이 plpgsql을 지원하지 않기 때문에

는 클라이언트 측 스크립트는 정말 유일한 옵션입니다. psql의 세미 - 모던 버전 (9.3+)을 사용한다면 다음과 같이 작동합니다 :

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

나는 그럴 것이라고 걱정했습니다. 확인 감사합니다! – rchung77