Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mysql过程:如何使用表名变量_Mysql_Variables_Store - Fatal编程技术网

mysql过程:如何使用表名变量

mysql过程:如何使用表名变量,mysql,variables,store,Mysql,Variables,Store,我已经构建了一个MySQL过程。 我必须在过程中定义v_表变量 谁能帮我? 谢谢 保罗 存储过程中的表名和列名都不能是动态的。您需要将sql语句组装为字符串,并使用语句执行它。因此,基本上,您将从查询中创建一个准备好的语句并执行它 链接文档也包含示例。存储过程中的表名和列名都不能是动态的。您需要将sql语句组装为字符串,并使用语句执行它。因此,基本上,您将从查询中创建一个准备好的语句并执行它 链接的文档还包含示例。是的,您可以。但是,如果您计划每次迭代执行一次更新,那么请确保调用所有3个命令,包

我已经构建了一个MySQL过程。 我必须在过程中定义v_表变量

谁能帮我?
谢谢 保罗


存储过程中的表名和列名都不能是动态的。您需要将sql语句组装为字符串,并使用语句执行它。因此,基本上,您将从查询中创建一个准备好的语句并执行它


链接文档也包含示例。

存储过程中的表名和列名都不能是动态的。您需要将sql语句组装为字符串,并使用语句执行它。因此,基本上,您将从查询中创建一个准备好的语句并执行它


链接的文档还包含示例。

是的,您可以。但是,如果您计划每次迭代执行一次更新,那么请确保调用所有3个命令,包括迭代中的deallocate prepare,否则mysql可能会达到可配置的prepared语句限制。为SELECT concat('update',table_name','set',column_name','=replace(',column_name','','')声明cur1游标作为信息模式中的sq。
C,其中表模式='splotdb'和数据输入('char','nchar','ntext','nvarchar','text','varchar');声明未找到的继续处理程序SET done=TRUE;设置sq='';开放cur1;igmLoop:将cur1循环提取到sq中;如果完成了,则离开循环;如果结束;从sq制备stmt;执行stmt;解除分配准备stmt;末端环路;关闭cur1;(完)。这是不可读的,请编辑您的问题并将格式化代码放在那里。2.请提供准确的错误信息。是的,您可以。但是,如果您计划每次迭代执行一次更新,那么请确保调用所有3个命令,包括迭代中的deallocate prepare,否则mysql可能会达到可配置的prepared语句限制。为SELECT concat('update',table_name','set',column_name','=replace(',column_name','','')声明cur1游标作为信息模式中的sq。
C,其中表模式='splotdb'和数据输入('char','nchar','ntext','nvarchar','text','varchar');声明未找到的继续处理程序SET done=TRUE;设置sq='';开放cur1;igmLoop:将cur1循环提取到sq中;如果完成了,则离开循环;如果结束;从sq制备stmt;执行stmt;解除分配准备stmt;末端环路;关闭cur1;(完)。这是不可读的,请编辑您的问题并将格式化代码放在那里。2.请提供准确的错误信息。
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
    open cur1;
     igmLoop: loop
        fetch cur1 into v_column,v_table;
         IF done THEN
          LEAVE igmLoop;
        END IF;
    update v_table set v_column=replace(v_column,'à','a`');
     end loop igmLoop;
    close cur1;
end