使用mysql动态查询返回已处理行的计数
我编写了一个mysql动态查询,将数据从一个数据库插入另一个数据库。这是问题所在使用mysql动态查询返回已处理行的计数,mysql,dynamic-sql,Mysql,Dynamic Sql,我编写了一个mysql动态查询,将数据从一个数据库插入另一个数据库。这是问题所在 CREATE DEFINER=`Definer1`@`%` PROCEDURE `PushData`() BEGIN Set @SqlQuery = 'Insert Into Table_A (Column1,Column2,Column3) Select Column1,Column2,Column3 From Table_B
CREATE DEFINER=`Definer1`@`%` PROCEDURE `PushData`()
BEGIN
Set @SqlQuery = 'Insert Into Table_A (Column1,Column2,Column3)
Select Column1,Column2,Column3
From Table_B
Where Table_B.Column1=1;';
PREPARE Statement From @SqlQuery;
EXECUTE Statement;
DEALLOCATE PREPARE Statement;
Select Count(*); -- Count of Inserted Rows
End
此查询将数据从表_B发送到表_A。最后,我想返回插入行的计数。
我该怎么做呢。
我知道当我不使用动态查询时,这很容易。
只需将计数分配给一个变量并与select语法一起使用。
但是我不知道如何使用动态查询来实现它。
有人可以建议吗?要返回受插入或更新查询影响的行数,请使用。因此,替换
Select Count(*);
与
SQL%rowcount可用于获取插入的记录数。下面的链接可能会有所帮助
@沙哈比达尔不担心。我很高兴能帮上忙。
SELECT ROW_COUNT();