2014-11-24 3 views
0

호출 사용자 정의 함수는 PostgreSQL을

기능 PostgreSQL의 테이블을 만들 때 사용자 정의 함수를 호출하는 동안 오류가 점점 오전

을 표 만들기와 것은 :

CREATE OR REPLACE FUNCTION nextval_special() 
    RETURNS text AS 
SELECT 'T'||to_char(nextval('entity_collector_team_team_code_seq'), 'FM10000') 

LANGUAGE sql VOLATILE 

COST 100; 

표는 다음과 같습니다

CREATE TABLE testtable1 
(
id integer, 
    teamcode AS (dbo.nextval_special()) 
) 

다음 오류가 발생합니다.

ERROR: syntax error at or near "AS"

LINE 4: teamcode AS (dbo.nextval_special())

entity_collector_team_team_code_seq 1과 같은 시퀀스 번호를 생성하는 시퀀스입니다. 테이블을 생성 한 후 출력을 T10001 및 T10002 시퀀스 자체로 예상합니다.

감사의 말

답변

1

Postgres에는 계산 열이 없습니다.

당신은 아마 열에 기본값을 할당하는 의미 :

CREATE TABLE testtable1 
(
    id  integer, 
    teamcode text not null default dbo.nextval_special() 
); 
+0

바로 하나. –