2014-12-13 119 views
-1

我正在尝试编写SQL将行从一个表复制到另一个表,但我一直在WHERE子句中获取无效标识符。我正在使用oracle apex。WHERE子句中的无效标识符

这里是我的代码:

INSERT INTO CRIMECLOSED (crimeClosedID, crimeName, crimeDate, crimeNotes, 
    outsideSourceDescription, dateClosed, relatedCrimes, 
    staffID, crimeTypeID, locationID) 
SELECT CRIMEOPEN.crimeOpenID, CRIMEOPEN.crimeName, CRIMEOPEN.crimeDate, 
     CRIMEOPEN.crimeNotes, CRIMEOPEN.outsideSourceDescription, CURDATE(), 
     CRIMEOPEN.relatedCrimes, CRIMEOPEN.staffID, CRIMEOPEN.crimeTypeID, 
     CRIMEOPEN.locationID 
FROM CRIMEOPEN 
WHERE CRIMEOPEN.crimeOpenID = '1'; 

CRIMEOPEN表

CREATE TABLE "CRIMEOPEN" 
( "crimeOpenID" VARCHAR2(5), 
"crimeName" VARCHAR2(20), 
"crimeDate" DATE, 
"crimeNotes" VARCHAR2(200), 
"outsideSourceDescription" VARCHAR2(200), 
"relatedCrimes" VARCHAR2(5), 
"staffID" VARCHAR2(5), 
"crimeTypeID" VARCHAR2(5), 
"locationID" VARCHAR2(5), 
CONSTRAINT "CRIMEOPEN_PK" PRIMARY KEY ("crimeOpenID") ENABLE 
) 

我得到的错误是:

ORA-00904: "CRIMEOPEN"."CRIMEOPENID": invalid identifier

我认为错误是想说, 'crimeOpenID'不是'CRIMEOPEN'中的专栏,但它是。 请帮忙吗?

+1

包括您的CRIMEOPEN表格设计 – HaveNoDisplayName 2014-12-13 15:10:09

+0

您是否真的在Oracle Apex中使用MySQL? – 2014-12-13 15:15:01

+0

为什么你需要别名在这里,你可以删除那些 – 2014-12-13 15:28:51

回答

1

如果在声明表的列时使用双引号,那么在“使用”各种语句中的列时也需要使用相同的格式。

所以为了解决这个问题,你应该在select语句中包含双引号中的所有列(如下所示 - 仅适用于select语句)。

INSERT INTO CRIMECLOSED (crimeClosedID, crimeName, crimeDate, crimeNotes, 
    outsideSourceDescription, dateClosed, relatedCrimes, 
    staffID, crimeTypeID, locationID) 
SELECT "CRIMEOPEN"."crimeOpenID", "CRIMEOPEN"."crimeName", "CRIMEOPEN"."crimeDate", 
     "CRIMEOPEN"."crimeNotes", "CRIMEOPEN"."outsideSourceDescription", CURDATE(), 
     "CRIMEOPEN"."relatedCrimes", "CRIMEOPEN"."staffID", "CRIMEOPEN"."crimeTypeID", 
     "CRIMEOPEN"."locationID" 
FROM "CRIMEOPEN" 
WHERE "CRIMEOPEN"."crimeOpenID" = '1'; 
+0

这解决了上面的错误,但现在我得到的错误:ORA-00904:“LOCATIONID”:无效的标识符 – user1056798 2014-12-13 16:39:23

+0

@ user1056798,那么你应该做的插入statemnt中的列的相同的​​东西 - 如果这些声明在相同方式,使用双引号,然后用双引号将它们包装在使用它们。 – 2014-12-13 16:41:04

+0

非常感谢:) – user1056798 2014-12-13 16:43:02