DDL 스크립트를 실패DDL 트리거 스크립트를 작성합니다 (아래 소스)이 오류와 함께 실패 트리거를 만들 수
문이 실패, SQLSTATE = 42000 동적 SQL 오류 - SQL 오류 코드 = -104 - 명령의 예기치 않은 끝 - 라인 3, 파일 C 라인 0 후 열 (44) : \ CRMDemo \ 데이터베이스 \ DDL \ Trigger_Orders.sql 문이 실패, SQLSTATE는 = 42000 동적 SQL 오류 - SQL 오류 코드 = -104 -Token 알 수 없음 - 줄 1, 열 1 -end 줄 14 번째 줄 C : \ CRMDemo \ Database \ DDL \ Trigger_Orders.sql
(줄 3, 열 44는 마치 닫는 부분으로 보일 수 있습니다.) 오류 42000 또는 -104에 관한 정보를 찾을 수 없습니다. 트리거는 존재하는 생성기의 레코드 번호를 할당하도록 설계되었습니다. 이 트리거는 동일한 스크립트의 Interbase에서 제대로 작동합니다. 내가 생각할 수있는 유일한 것은 열 크기 인 Integer가 반환 된 값에 대해 올바르지 않다는 것입니다. 그러나 설명서에 따르면 값이 잘릴 수는 있지만 예상 값 (1)에서 작동해야합니다.
CREATE TRIGGER ORDERS_GENERATE_KEY FOR ORDERS ACTIVE BEFORE INSERT POSITION 95 AS
begin
NEW.ORDER_NR = GEN_ID(NEW_ORDER_NUMBER, 1);
end;
파이어 버드는 2.5.2 버전입니다. Windows 7. 데이터베이스는 32 비트 여야합니다.
무엇 유틸리티 당신은 문을 실행하는 데 사용할 수 있습니까? –
배경 정보와 마찬가지로 : SQLstate 42000은 SQL : 2003 표준에 정의 된 '구문 오류 또는 액세스 규칙 위반'이라는 매우 일반적인 오류입니다. 오류 -104는 일반적인 오류나 문법 오류와 비슷한 방화 고리입니다 (Interbase 6.0 언어 참조 (205-206 페이지)의 표 6.4에는 해당 오류 코드와 관련된 약 15 개의 오류가 나열되어 있음). '토큰 알 수 없음'(파이어 버드 오류 335544634) 메시지와 결합하면 코드에 구문 오류가 있다는 의미입니다. –