0

我正在使用MySQLas开发一个 Windows 应用程序data-base server。我需要执行一个准备好的语句,并且想要将结果加载到数据集中而不使用stored procedure. 谁能告诉我我该怎么做。

陈述

 SET @Statment =
  (
    SELECT REPLACE(
                  REPLACE(
                        GROUP_CONCAT(
                                      Concat(' SELECT COUNT(*) AS `ROWS`//''',TABLE_NAME,''' AS `TABLE` FROM ', TABLE_NAME , ' UNION ALL')
                                    )
                         ,',','')
                 ,'//',',')
    FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'wbss'
  );
  SET @Statment = (SELECT SUBSTRING(@Statment,1,LENGTH(@Statment) - 9));
  PREPARE STMT FROM @Statment;
  EXECUTE STMT;
  DEALLOCATE PREPARE STMT;

注意:- 我无权使用存储过程执行此操作。

4

1 回答 1

0

您是否尝试过将这些查询作为 MYSql 命令的参数传递?尝试将它们连接起来并作为单个字符串传递。尝试从硬编码值开始。我不想告诉你确切的解决方案,但可能是这样的:

cmd.CommandText = "insert into animals (id, name) values (:id, :name);+ select id, name from animals where id = last_insert_id()";

请不要将其视为字面解决方案。将其视为一种选择并通过它。

于 2013-09-02T11:04:24.703 回答