我有一个 Winform C#.NET 应用程序。
当我使用 SQL Server ,然后一起返回两个结果集时,我使用 linebreak '\n' 传递了两个 SELECT 查询,但是如何在 mysql 中做到这一点?
在 SQL SERVER 中,我这样做并完成了:
"SELECT ProductName FROM Products" +"\n" +"SELECT ProductID FROM Products"
但是如何在 MySQL 中做到这一点????
我有一个 Winform C#.NET 应用程序。
当我使用 SQL Server ,然后一起返回两个结果集时,我使用 linebreak '\n' 传递了两个 SELECT 查询,但是如何在 mysql 中做到这一点?
在 SQL SERVER 中,我这样做并完成了:
"SELECT ProductName FROM Products" +"\n" +"SELECT ProductID FROM Products"
但是如何在 MySQL 中做到这一点????
在 MySQL 中,由于其局限性,这是不可能的。很久以前,他们认为在一批中允许多个查询是不安全的。这可能是因为 MySQL 经常与 php 结合使用,并且通过添加分号并注入另一个查询来进行简单的 SQL 注入攻击是很常见的。
PS> 我不知道它是否适用于 MySQL 的新版本,因为自从我使用它(大约 3 年前)以来,可能发生了一些变化。
PS> 我建议使用存储过程来完成这个任务。
这可能看起来像这样:
CREATE PROCEDURE sample_procedure()
READS SQL DATA
BEGIN
SELECT xxx FROM yyy;
SELECT zzz FROM vvv;
END;