2013-06-28 68 views
3

有没有办法让这个默认为以下:按ID降序排序,或按行创建日期降序排序?SQL Server默认为选择前1000行

+0

你的意思是默认对于SQL Server Management Studio? – chollida

+0

是的,当你右键单击SSMS中的表名 –

+0

看到我在这篇文章中的答案。我认为这是你想要的:http://stackoverflow.com/a/17306241/426422。如果你的意思是所有查询默认的,我认为这是不可能的。 –

回答

6

不可以。唯一可以修改的属性是工具 - >选项 - > SQL Server对象资源管理器 - >值为选择顶部< n>行命令下的行数。请注意,您也可以修改编辑Top < n>行和选择Top < n>审计记录。

您可以编写一个单独的存储过程,将其添加到您的主数据库,并在工具 - >选项 - >键盘 - >查询快捷方式下添加一个快捷方式。然后在Management Studio中,可以突出显示模式和表的名称并运行快捷方式。被调用的存储过程可以为您执行此操作。以下是一个示例存储过程,它可以实现此目标,但按第一列而不是特定列名进行排序。您可以将1替换为特定的列名称,但这可能更符合您的目的。

CREATE PROCEDURE dbo.usp_Test_OrderByFirstColumnDesc 
    @TableName VARCHAR(MAX) 
AS 

SET NOCOUNT ON; 

DECLARE @SqlCommand NVARCHAR(MAX) = N'SELECT TOP 1000 * 
FROM ' + @TableName + ' (NOLOCK) 
ORDER BY 1 DESC'; 

PRINT @SqlCommand; 

EXEC dbo.sp_ExecuteSQL @SqlCommand; 
3

工具 - >选项 - > SQL Server对象资源管理器 - >命令

**改变数值为编辑前行命令**到一个更高的数字