【问题标题】:Select one row with C# from MySQL?从 MySQL 中用 C# 选择一行?
【发布时间】:2009-10-30 17:06:49
【问题描述】:

我尝试了 MySqlDataReader 和 mycmd.ExecuteScalar() 的任何变体,但仍然没有成功。最后我使用 MySqlDataAdapter 和 Fill 方法并使用一些 if 案例并从那里选择一行。但这使代码更难看。示例如下:

DataSet tmpDs = new DataSet();
myda.Fill(tmpDs);
if (tmpDs.Tables.Count > 0)
   if (tmpDs.Tables[0].Rows.Count > 0)
      sonuc = tmpDs.Tables[0].Rows[0];

有没有更好的方法从MySQL 中选择一行?

【问题讨论】:

    标签: c# mysql


    【解决方案1】:

    用下面的 SQL 填充你的 DS,而不是把整个表带回来。

    SELECT * FROM MyTable WHERE SomeKey='3' LIMIT 1

    【讨论】:

    • 是的。问题也与 MySQL 有关。
    • 是的。我错过了最后一行:)
    • 我正在寻找 c# 方式而不是 sql。但可以肯定的是,在 db 端可以完成这项工作。
    • 根据表的大小,将整个表带回c#然后选择行将非常低效。最佳选择是从源头上选择您想要的。
    猜你喜欢
    • 2018-08-27
    • 1970-01-01
    • 2021-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-28
    • 1970-01-01
    相关资源
    最近更新 更多