2016-07-04 12 views
-2

Ich bekomme einen fehlenden Komma-Fehler bei allen 3 Anweisungen, wenn ich versuche, INSERT INTO zu verwenden, mehrfach überprüft, danke.ORA-00917: fehlendes Komma. INSERT INTO-Anweisungen

INSERT INTO staff 
(staff_id, staff_name, address, d_o_b, email, phone_number, salary, hire_date, job_role, nationality, over_time, bonus, caravan_park_id) 
VALUES 
(1.NEXTVAL, 'Simon Gould', '17 Pearson Grove', '13/10/92', '[email protected]', 07817333245, '24000', '13/10/15', 'engineer', 'Portuguese', '10 hours', '£500', 1.nextval); 
INSERT INTO staff 
(staff_id, staff_name, address, d_o_b, email, phone_number, salary, hire_date, job_role, nationality, over_time, bonus, caravan_park_id) 
VALUES 
(2.NEXTVAL, 'Josh Dawkins', '28 Mulholland Drive', '12/09/82', '[email protected]', 07801123456, '15000', '02/05/11', 'engineer', 'English', '6 hours', '£300', 2.nextval); 
INSERT INTO staff 
(staff_id, staff_name, address, d_o_b, email, phone_number, salary, hire_date, job_role, nationality, over_time, bonus, caravan_park_id) 
VALUES 
(3.NEXTVAL, 'Michelle Arazanguiz', '75 Newport Way', '21/03/90', '[email protected]', 07323456456, '16000', '05/11/08', 'tour guide', 'Spanish', '0 hours', '£0', 3.nextval); 
+0

Was ist der Typ Telefonnummer? ist Lohnart Zeichenfolge? –

+2

Was ist '1.nextval'? Ist es eine Sequenz? – DavidG

+1

Ich wette, Sie haben auch andere Probleme, aber da Sie die Werte 'staff_id' und' caravan_park_id' hartcodieren wollen, brauchen Sie den '.nextval' Teil nicht. Ich bin neugierig, was dich dazu gebracht hat, den Wert so zu konstruieren. – sstan

Antwort

1

Nach the Oracle documentation, sollten Sie Ihre Abfrage so etwas wie:

INSERT INTO staff 
(staff_id, staff_name, address, d_o_b, email, phone_number, salary, hire_date, job_role, nationality, over_time, bonus, caravan_park_id) 
VALUES 
(staff_id.NEXTVAL, 'Simon Gould', '17 Pearson Grove', '13/10/92', '[email protected]', 07817333245, '24000', '13/10/15', 'engineer', 'Portuguese', '10 hours', '£500', caravan_park_id.nextval); 
INSERT INTO staff 
(staff_id, staff_name, address, d_o_b, email, phone_number, salary, hire_date, job_role, nationality, over_time, bonus, caravan_park_id) 
VALUES 
(staff_id.NEXTVAL, 'Josh Dawkins', '28 Mulholland Drive', '12/09/82', '[email protected]', 07801123456, '15000', '02/05/11', 'engineer', 'English', '6 hours', '£300', caravan_park_id.nextval); 
INSERT INTO staff 
(staff_id, staff_name, address, d_o_b, email, phone_number, salary, hire_date, job_role, nationality, over_time, bonus, caravan_park_id) 
VALUES 
(staff_id.NEXTVAL, 'Michelle Arazanguiz', '75 Newport Way', '21/03/90', '[email protected]', 07323456456, '16000', '05/11/08', 'tour guide', 'Spanish', '0 hours', '£0', caravan_park_id.nextval); 

Das heißt, verwenden staff_id.NEXTVAL und caravan_park_id.nextval, um anzuzeigen Sie den nächsten Wert in diesen beiden Sequenzen werden soll.

+0

Um dies klarzustellen, setzt diese Antwort die Existenz von Sequenzen mit dem Namen 'staff_id' und' caravan_id' voraus. – APC