ฉันกำลังพัฒนาทริกเกอร์ที่ต้องตรวจสอบความถูกต้องของวันที่ ฉันมีปัญหาครั้งใหญ่ในการสร้างหนึ่ง เพราะไม่ว่าฉันจะพยายามทำให้โค้ดของฉันง่ายขึ้นอย่างไร Oracle ก็ส่งคืนข้อผิดพลาดเดียวกันนี้: ORA-00922: ตัวเลือกหายไปหรือไม่ถูกต้อง ฉันได้ตรวจสอบรหัสซ้ำแล้วซ้ำเล่า และฉันก็ไม่เข้าใจจริงๆ ว่าปัญหาของฉันอยู่ที่ไหน!
ต่อไปนี้เป็นทริกเกอร์เวอร์ชันที่เรียบง่ายเกินไป ซึ่งได้รับข้อผิดพลาดเดียวกันด้วย
CREATE OR REPLACE checkDateValidity
BEFORE INSERT
ON Event
FOR EACH ROW
BEGIN
IF :new.month>12
THEN
RAISE_APPLICATION_ERROR(-20101, 'Error: wrong month');
END IF;
END;
ฉันหวังว่าคุณจะสามารถช่วยฉันได้เพราะ ณ จุดนี้ฉันไม่รู้ว่าฉันทำอะไรผิดจริงๆ