2016-11-29 4 views
0

я получаю сообщение об ошибке «отсутствует ключевое слово. Я не знаю, что это мне не хватает, может кто-нибудь помочь?я получаю сообщение об ошибке «недостающее слово»

вот мой код

create trigger EmployeeforUpdate 
after insert 
on Employee 
for insert, delete, Update 
declare 
    staff_id; 
begin 
insert into payroll 
(first_name, middle_name, surname, department, designation, Grade_level,step) 
select (first_name, middle_name, surname, department, designation, Grade_level,step) 
from employee 
End 
/
+4

Удалить скобки из списка выбора – jarlh

+1

staff_id типа данных – jarlh

+0

@jarlh в staff_id типа данных v archar – Nma

ответ

0
CREATE TRIGGER EmployeeforUpdate AFTER INSERT 
on Employee 
FOR EACH ROW 
BEGIN 
DECLARE staff_id VARCHAR(50); 
INSERT INTO payroll(first_name, middle_name, surname, department, designation,Grade_level,step) 
SELECT first_name, middle_name, surname, department, designation,Grade_level,step FROM employee 
End; 

Более подробная информация о вставке в выбор:.? http://www.w3schools.com/sql/sql_insert_into_select.asp

+0

все еще получаю такое же сообщение об ошибке – Nma

+0

Я обновил свой ответ. Обратите внимание на команду BEGIN перед командой DECLARE. Я не смог проверить это, потому что у меня нет MySQL. Надеюсь, что это работает. – Alee

+0

Вы также объявляете переменную staff_id, но не задавали свой тип данных. – Alee

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