即使在执行存储过程后,'operand should contain one column'也给出无法理解的错误


DELIMITER $$
CREATE DEFINER=`root`@`localhost` PROCEDURE `sample`(IN `feename` VARCHAR(50), IN `feemslno` INT(11))
BEGIN
SELECT id INTO @f FROM s_menu where name='FEES' LIMIT 1; 
INSERT INTO s_menu (name, mslno, parentid,url,roles) 
SELECT (feename, feemslno, @f,'feeblank.php','All,Notview,sysadmin')
WHERE NOT EXISTS (SELECT * FROM s_menu WHERE url='feeblank.php' 
AND name='Reports'); 
SELECT id INTO @c FROM s_menu where url='feeblank.php' LIMIT 1; 
UPDATE s_menu SET parentid=@c WHERE url = 'fee_dues_details_with_jTable_ver3.php' 
AND id!=1;
UPDATE s_menu SET parentid=@c WHERE url = 'fee_dues_summary_with_jTable_ver_3.php' 
AND id!=1;
UPDATE s_menu SET parentid=@c WHERE url = 'fee_dues_summary_class_section_wise_with_jTable_ver_2.php' 
AND id!=1;
UPDATE s_menu SET parentid=@c WHERE url = 'fee_dues_summary_school_wide_with_jTable_ver_2.php' 
AND id!=1;
END$$
DELIMITER ;

删除 statemenTSELECT (feename, feemslno, @f,'feeblank.php','All,Notview,sysadmin')中的括号,我注意到在您之前的问题中有一个关于使用 DUAL 的未解决的讨论 - 我已经尝试过您的代码,但没有双重,我得到一个语法错误。

相关内容

最新更新