题
是否可以使用C#将1查询中的查询数据包发送到MySQL?我的意思是我有13个选择,它们没有关系,因此不能结合它们,它们获得了不同类型的数据。现在,我得到了DBConn,13倍选择,DBCLOSE,当它在LAN上工作时,这不是问题,但是在Internet上工作时,有时需要减慢延迟的延迟(13倍选择和recive Data)。 ID喜欢用1个查询来完成:
从XXX选择XXX;从zzz中选择zzz;从yyy中选择yyy;
而不是阅读foreach桌子
解决方案
您可以发送多个语句,并使用多个结果集使用 MySqlDataReader
. 。您可以做这样的事情:
var cmd = new MySqlCommand("...lot of SQL selects...");
using (var reader = cmd.ExecuteReader())
{
// Go to a 'next result' each time.
while (reader.NextResult())
{
while (reader.Read())
{
// Read data from result set.
}
}
}
诀窍是使用 MySqlDataReader.NextResult
每次跳过下一个结果。当然,在您的情况下,您知道您可以期待多少个结果,因此您不应该使用 while
循环,但你明白了。
不隶属于 StackOverflow