2017-10-09 14 views
0

DML을 실행할 때 토큰을 알 수없는 QTY가 발생합니다. QTY가 테이블 정의의 앞 부분에 포함되어있는 이유가 완전히 손실되었습니다. COMPUTED 열에서 오류가 발생합니다.Token Unknown, Firebird Computed 작성자 :

CREATE TABLE LINE_ITEMS(
    LINE_ITEM_ID INTEGER NOT NULL, 
    QTY   NUMERIC(10,4) DEFAULT 0, 
    PRICE  NUMERIC(10,4) DEFAULT 0, 
    AMOUNT  COMPUTED BY QTY * PRICE,  
    CONSTRAINT PK_LINE_ITEMS PRIMARY KEY(LINE_ITEM_ID))); 

답변

4

당신은 괄호 식을 넣어해야합니다

CREATE TABLE LINE_ITEMS 
(
    LINE_ITEM_ID INTEGER NOT NULL, 
    QTY   NUMERIC(10,4) DEFAULT 0, 
    PRICE  NUMERIC(10,4) DEFAULT 0, 
    AMOUNT  COMPUTED BY (QTY * PRICE),  
    CONSTRAINT PK_LINE_ITEMS PRIMARY KEY(LINE_ITEM_ID) 
); 
+0

그래, 나 자신과 내 자신의 질문에 대답가는 것을 발견했다. Borrie 책에는 괄호가없는 문자열을 연결하는 계산 된 필드의 예가 있지만 위의 구문 정의에는 (expr)이 있습니다. – user1455270

+1

@ user1455270 네,하지만 그 책은 바로 책입니다. https://www.firebirdsql.org/en/reference-manuals/에서 IB6 LangRef 또는 양식 스크래치 FB2.5 참조 문서를 확인할 수 있습니다. 또한 IBExpert 나 FlameRobin과 같은 GUI IDE를 사용하여 생성 된 테이블을 SQL 스크립트로 볼 수 있습니다. –