Oracle PLS-00049:更新触发器中的绑定变量错误

Oracle PLS-00049:更新触发器中的绑定变量错误,oracle,triggers,Oracle,Triggers,我正试图在Oracle 11g Express Edition中编写一个简单的触发器: CREATE OR REPLACE TRIGGER EMPLOYEE_UPDATE BEFORE UPDATE ON EMPLOYEE FOR EACH ROW BEGIN :new.End_Date := SYSDATE; END; 但这会引起错误: Error(4,1): PLS-00049: bad bind variable 'NEW.END_DATE' 这个简单触发器有什么问题?重写CR

我正试图在Oracle 11g Express Edition中编写一个简单的触发器:

CREATE OR REPLACE TRIGGER EMPLOYEE_UPDATE 
BEFORE UPDATE ON EMPLOYEE
FOR EACH ROW
BEGIN
   :new.End_Date := SYSDATE;
END;
但这会引起错误:

Error(4,1): PLS-00049: bad bind variable 'NEW.END_DATE'

这个简单触发器有什么问题?

重写CREATE TABLE EMPLOYEE语句后,问题消失了。我有

CREATE TABLE EMPLOYEE
( "Employee_ID" NUMBER(6,0),
 "HireDate" DATE,
 "Salary" NUMBER(8,2),
 CONSTRAINT "EMPLOYEE_PK" PRIMARY KEY ("Employee_ID") ENABLE
 );
我删除了表并重写了创建表语法,没有双引号:

CREATE TABLE EMPLOYEE
( Employee_ID NUMBER(6,0),
 HireDate DATE,
 Salary NUMBER(8,2),
 CONSTRAINT EMPLOYEE_PK PRIMARY KEY (Employee_ID) ENABLE
 );
问题消失了

编辑:
正如@Sathya所解释的,在Oracle中,对象名在其名称周围加上引号时,不会区分大小写。我的误解是问题。

表EMPLOYEE中是否有“结束日期”列?是的,它是表EMPLOYEE中的列。如果使用引号,您也可以使用相同大小写的引号输入查询。例如:新的“结束日期”=''。顺便说一句,表没有END_DATE列?在Oracle中,它不是一个对象名,当用引号围绕它的名称创建时,它就不区分大小写了