2014-12-14 2 views
2

Привет, я создал таблицу и хочу добавить данные сейчас, у меня есть метка времени как тип данных, и я получаю ошибки, которые могут мне помочь?SQL ERROR: ORA-00904: «TIMESTAMP»: INVALID IDENTIFIER

CREATE TABLE Production(
ProductionID INT PRIMARY KEY, 
ProductionName VARCHAR2(100) NOT NULL, 
ProductionDescription VARCHAR2(250) NOT NULL, 
ProductionDate DATE NOT NULL, 
ProductionTime TIMESTAMP NOT NULL, 
ProductionTypeID INT NOT NULL, 
NoOfHelpers CHAR(1) NOT NULL); 

INSERT INTO PRODUCTION(PRODUCTIONID, PRODUCTIONNAME, PRODUCTIONDATE, PRODUCTIONTIME, PRODUCTIONTYPEID, NOOFHELPERS) 
VALUES(1,'THELONDONSINFONIA', TO_DATE('31-AUG-2004','DD-MON-YYYY'), TIMESTAMP('2014-05-05 20:15:00'), 1, 7); 

Я использую разработчик Oracle SQL, чтобы создать базу данных

это ошибка:

Error starting at line : 10 in command -

INSERT INTO PRODUCTION(PRODUCTIONID, PRODUCTIONNAME, PRODUCTIONDATE, PRODUCTIONTIME, PRODUCTIONTYPEID, NOOFHELPERS) VALUES(1,'THELONDONSINFONIA', TO_DATE('31-AUG-2004','DD-MON-YYYY'), TIMESTAMP('2014-05-05 20:15:00'), 1, 7)

Error at Command Line : 11 Column : 69

Error report -

SQL Error: ORA-00904: "TIMESTAMP": invalid identifier 00904. 00000 - "%s: invalid identifier"

*Cause:

*Action:

ответ

2

timestamp не является функцией, где вам нужно использовать ( и ), это префикс точно так же, как n, указывает на то, что varchar содержит текст Юникода (так varchar2 или nvarchar).

Так что не использовать это:

timestamp('2014-05-05 20:15:00') 

Но это:

timestamp'2014-05-05 20:15:00' 
+0

необходимо также, чтобы вставить значения в ProductionDescription, поскольку она не является нулевой столбец, он не включил это в заявлении вставки –