总结:看了很多建议反对 出于性能和可维护性的考虑,在 MS SQL 中使用 SELECT *。然而,这些帖子中的许多都非常古老——5 到 10 年!它似乎 ,从许多这些帖子中,性能问题实际上可能很小,即使在他们的时代,以及可维护性问题(“哦,不,如果有人更改了列,并且您通过索引数组来获取数据呢? !您的 SELECT * 会给您带来麻烦!”),现代编码实践和 ORM(例如 Dapper)似乎 - 至少以我的经验 - 消除这种担忧。
所以: SELECT * 是否存在今天仍然相关的问题?
更大的背景:我已经开始在一个有很多旧 MS 代码(ASP 脚本等)的地方工作,并且我一直在帮助对其进行现代化改造,但是:我的大部分 SQL 经验实际上来自MySQL 和 PHP 框架和 ORM - 这是我第一次使用 MS SQL - 我知道两者之间存在细微的差异。另外:我的同事比我大一点,并且有些担心 - 对我来说 - 看起来“老”。 (“可空字段很慢!避免使用它们!”)但同样:在这个特定领域,他们肯定比我有更多的经验。
出于这个原因,我还想问:现在使用现代 ORM 的 SELECT * 是否安全和理智,是否有最近的在线资源表明这一点?
谢谢! :)
最佳答案
这个问题已经有一段时间了,似乎没有人能够找到,Ben 在寻找什么......
我认为是这样,因为答案是“视情况而定”。
只有 不是 的答案。
例子
我可以继续。没有一个答案。它只是取决于许多因素。
关于sql - 围绕 MS SQL 上的 SELECT * 的性能/代码可维护性问题今天仍然与现代 ORM 相关吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39295985/