ОШИБКА 1243 (HY000): Неизвестный обработчик подготовленных операторов (stmt), заданный для ВЫПОЛНЕНИЯ в моем sql

#mysql #prepared-statement

Вопрос:

Я создал временную таблицу

 DROP TABLE IF EXISTS tabFormNgwIds;  CREATE TEMPORARY TABLE tabFormNgwIds (  Id INT NOT NULL AUTO_INCREMENT,  FormIdVal VARCHAR(255),  FormIdTabName VARCHAR(255) NOT NULL,  renameFormIdTabName VARCHAR(255) NOT NULL,  KEY(Id)  );  

Вставленные данные в эту таблицу,

 SET @idqdynamicngw=CONCAT('INSERT INTO tabFormNgwIds (FormIdVal,FormIdTabName,renameFormIdTabName) SELECT form_types,CONCAT(''ap_form_'',form_types),CONCAT(SUBSTRING(name ,1,(52-length(form_types))),''_'',form_types)rnFROM form_work WHERE tenant_id = 1365 AND form_types !="" AND active=1 AND STATUS= 1');  PREPARE stmtiddynamicngw FROM @idqdynamicngw;  EXECUTE stmtiddynamicngw;  DEALLOCATE PREPARE stmtiddynamicngw;  

затем вставьте значения временной таблицы в другую временную таблицу

 INSERT INTO tabFormIds (FormIdVal,FormIdTabName,renameFormIdTabName)  SELECT FormIdVal,FormIdTabName,renameFormIdTabName FROM tabFormNgwIds;  

Это делается по процедуре в mysql. когда я запускаю процедуру, появляется ошибка =gt; ОШИБКА 1243 (HY000): Неизвестный обработчик подготовленных инструкций (stmt), заданный для ВЫПОЛНЕНИЯ.

Комментарии:

1. Создайте онлайн-игру с проблемой или опубликуйте образцы данных (СОЗДАЙТЕ ТАБЛИЦУ ВСТАВЬТЕ В нее), достаточные для воспроизведения вашей проблемы. Конечно, предоставьте полный текст процедуры, а не ее часть.