2016-07-04 3 views
-2

Я получаю недостающую запятую на всех 3 операторах, когда я пытаюсь использовать INSERT INTO, проверял его несколько раз, спасибо.ORA-00917: отсутствует запятая. INSERT INTO

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

Что такое тип phone_number? строка типа зарплаты? –

+2

Что такое '1.nextval'? Это последовательность? – DavidG

+1

Уверен, у вас есть и другие проблемы, но, поскольку вы, похоже, хотите жестко задавать значения 'staff_id' и' caravan_park_id', вам не нужна часть '.nextval'. Мне любопытно, что заставило вас в первую очередь построить такую ​​ценность. – sstan

ответ

1

Согласно the Oracle documentation, вашему запросу должен быть чем-то вроде:

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); 

То есть, использовать staff_id.NEXTVAL и caravan_park_id.nextval, чтобы указать, что вы хотите, следующее значение в обеих этих последовательностях.

+0

Чтобы быть ясным, этот ответ предполагает существование последовательностей, называемых «staff_id» и «caravan_id». – APC

Смежные вопросы