SQL Server如何确定列的顺序,当你做一个SELECT *
?SQL服务器选择*列名订购
我知道“排序”是订购数据必不可少的,但我预计列名是一致的。
注意:我的代码是而不是,具体取决于列返回的实际顺序。我只想知道SQL Server如何决定排列列名。
约20台电脑我的团队正在使用,其中一人的行为不同。任何差异都值得进行调查。当我们打开SQL Server Management Studio时,所有计算机的列名排序似乎都是一样的。当我们的应用程序进行查询时,当我看到差异时。
我使用SQL Server 2008和SQL Server 2008 R2。我的应用程序使用C#System.Data.SqlClient来访问数据库。
编辑: 我的问题竟然是其中一台电脑被配置为登录为'sa',而不是预期的用户。当我们打算查看视图时,查询就直接敲击表格。感谢您的帮助学习有关SYS.COLUMNS
以及首先第一件事情,你应该总是指定的列,而不是使用SELECT *,那么你可以控制它 – Taryn 2012-04-18 16:51:06
它是按照您在创建表 – Devjosh 2012-04-18 16:51:15
@bluefeet和其他人时定义它们的顺序排列的,这不是最佳实践的问题。这是对SQL Server如何做出某些决定感到好奇的问题。 – Yuck 2012-04-18 16:52:15