gpt4 book ai didi

c# - 使用 SqlCommand.ExecuteScalar() 时是否需要将 top 1

转载 作者:行者123 更新时间:2023-11-30 13:54:29 24 4
gpt4 key购买 nike

我已经分析了 the code SqlCommand 并看到它工作正常(参见 CompleteExecuteScalar 方法)。但我不确定是否应该在查询中使用 top 1。例如,我有 select name from Person 和表 Person 包含很多记录。我是否应该将 qry 修改为 从 Person 中选择前 1 个名字?或者我可以让 qry 保持原样,它不会影响性能/内存等?恐怕服务器可以在输出之前缓冲一些数据。

最佳答案

你绝对应该输入 TOP 1在查询中,如果您只想从数据库中获取一行,无论您是否通过 ExecuteScalar 传递数据或 ExecuteReader例如。

你不应该阅读源代码得出这样的结论。事实上,命令的实现方式是封装的,调用类不应该根据命令的确切实现来做出决定。

相反,我的想法是数据库是稀缺资源,应该根据数据吞吐量和相关措施进行优化使用。这包括向数据库指示正好需要一行并完成它。让较低层(例如命令实现和数据库本身)查看如何使用该信息以获得最佳性能。

关于c# - 使用 SqlCommand.ExecuteScalar() 时是否需要将 top 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42294846/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com