Я создал триггер, который создает динамический запрос. И выполнил его. Я пытался «EXECU q», но он не работает.Как я могу запустить / выполнить этот динамический запрос.
BEGIN
DECLARE a INT Default 0 ;
DECLARE str VARCHAR(255);
DECLARE q VARCHAR(500);
SET q = 'insert into '+new.master_name+' values(';
simple_loop: LOOP
SET a=a+1;
SET str = SPLIT_STRING(new.remarks,"|",a);
SET q = CONCAT(q,str+',');
SET q = LEFT(q, LENGTH(q) - 1);
IF str='' THEN
LEAVE simple_loop;
END IF;
END LOOP simple_loop;
SET q = CONCATE(q,');');
EXEC q
END
Это Trigerr, это функция, которую я сделал ВОЗВРАТ ЗАМЕНИТЬ (SUBSTRING (SUBSTRING_INDEX (str, delim, pos), CHAR_LENGTH (SUBSTRING_INDEX (str, delim,pos - 1)) + 1), delim, '')