-1

SQL Server 中的存储过程能否包含“Select *”关键字。不应该有“从表名中选择列名”。在存储过程中特别是在 T-SQL 中使用“select *”是正确的做法吗?

4

1 回答 1

2

它可以?是的。

应该是?几乎可以肯定不是。

的用例select *应仅限于您希望获取每个当前列的情况,无论将来何时从表中添加或删除什么。

这仅限于一些小场景,例如:

  • 调试您想要整个表输出以进行检查的位置;或者
  • 诸如倾倒器之类的工具,您想要的一切。

我建议每个用户查询只获取他们需要的列,因为这两个:

  • 尽量减少电汇转账;和
  • 无需告诉您,即可轻松检测 DBA 在何处删除了您的列之一。

由于在存储过程中使用非用户查询毫无意义,因此您可能永远不 select *应该使用它们。

于 2013-02-05T05:00:47.533 回答