小编Mar*_*lli的帖子

9
推荐指数
1
解决办法
1150
查看次数

列出 SQL Server 实例启动参数

我有一台刚刚重新启动的服务器,并使用以下命令验证了哪些跟踪标志处于活动状态DBCC TRACESTATUS

在此处输入图片说明

跟踪标志:3688 功能:将有关跟踪开始和停止的消息删除到错误日志

在这里您可以看到每个跟踪标志的作用。

标记 3688

启动参数如下:

在此处输入图片说明

题:

如何通过 T-SQL 找到 SQL Server 服务的启动参数?

sql-server t-sql configuration sql-server-2014

9
推荐指数
2
解决办法
9858
查看次数

如何在离线机器上安装 SQL Server PowerShell 模块?

我有一些 SQL Server 机器无法连接到任何外部站点。

我在管理数据库时越来越多地使用 PowerShell,所以我肯定需要安装这个模块,以便我可以使用我的 PowerShell 例程。

事实证明,在这些离线机器上安装 SQL Server 模块很困难。

当我尝试安装模块时:

在此处输入图片说明

SqlServer模块要求提供NuGet 模块包

在此处输入图片说明

然后我得到了这片红色字母的海洋和以下错误消息,如下图所示:

警告:无法从 URI“ https://go.microsoft.com/fwlink/?LinkID=627338&clcid=0x409 ”下载到“”。

警告:无法下载可用提供程序的列表。检查您的互联网连接。PackageManagement\Get-PackageProvider:无法找到包提供程序“NuGet”。

它可能尚未导入。尝试“Get-PackageProvider -ListAvailable”。

在 C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\1.0.0.1\PSModule.psm1:7415 char:30 + ... tProvider = PackageManagement\Get-PackageProvider -Name $script:NuGet ...

在此处输入图片说明

此 PowerShell 模块安装的解决方法是什么?

sql-server powershell installation automation patching

9
推荐指数
1
解决办法
6287
查看次数

连接已断开且无法恢复 - sql server 错误

我在创建 tempDB 文件时遇到以下 sql server 错误。有任何想法吗?

在此输入图像描述

连接已断开且无法恢复。客户端驱动程序尝试恢复连接一次或多次,但所有尝试均失败。增加 ConnectRetryCount 的值可增加恢复尝试的次数。(微软 SQL Server,错误:0)

sql-server permissions tempdb connectivity sql-server-2014

8
推荐指数
2
解决办法
4万
查看次数

从链接服务器获取@@SERVERNAME

这似乎是一个基本问题,但我找不到任何答案 - 我需要能够从链接服务器获取服务器名称/实例等。我尝试了几件事:

select <linked server>.@@SERVERNAME;
select <linked server>.SERVERPROPERTY('ServerName');
Run Code Online (Sandbox Code Playgroud)

......但没有快乐。有任何想法吗?

这是SQL 2008 R2& 2014(2008R2是链接服务器)

编辑:错误是:

消息 102,级别 15,状态 1,第 2 行“@@SERVERNAME”附近的语法不正确。

sql-server sql-server-2008-r2 linked-server openrowset exec

8
推荐指数
2
解决办法
2万
查看次数

当您想在过滤索引中放置 OR 时,是否有解决方法?

当您想在过滤索引中放置 OR 时,是否有解决方法?

create index FIDX_tblbOrders_sdtmOrdCreated_INCL 
on dbo.tblBOrder(sdtmOrdCreated)
INCLUDE (sintMarketID,
         strCurrencyCode,
         sintOrderStatusID
         )
WHERE ((sintMarketId=1)
AND ( (sintOrderStatusId < 9) OR (sintOrderStatusId > 14)))
Run Code Online (Sandbox Code Playgroud)

我正在尝试创建上面的索引,因为我对 sintOrderStatusId IN (9-14) 的任何情况都不感兴趣

当然,我可以创建视图或索引视图,但我试图避免这种情况。

只是添加更多信息:sintOrderStatusId 是 smallint NOT NULL 并且可能的值范围从 1 到 30。要避免 9 到 14,因此过滤索引。

sql-server filtered-index sql-server-2014

8
推荐指数
1
解决办法
241
查看次数

在这种情况下,表变量如何提高查询的性能?

对于这种特定情况,我将在下面尝试解释,使用表变量比不使用表变量性能更好。

我想知道为什么,如果可能的话,去掉表变量。

这是使用表变量的查询:

USE [BISource_UAT]
GO

set statistics io on
SET STATISTICS TIME ON

    SET NOCOUNT ON;

    DECLARE @OrderStartDate DATETIME = '15-feb-2015'
    DECLARE @OrderEndDate DATETIME = '28-feb-2016'
    DECLARE @tmp TABLE
    (
    strBxOrderNo VARCHAR(20)
    ,sintReturnId INT
    )  

    INSERT INTO @tmp
    SELECT  strBxOrderNo
            ,sintReturnId
    FROM    TABLEBACKUPS.dbo.tblBReturnHistory rh
    WHERE   rh.sintReturnStatusId in ( 3 )
    AND     rh.dtmAdded >= @OrderStartDate
    AND     rh.dtmAdded < @OrderEndDate

    SELECT 
             op.lngPaymentID
            ,op.strBxOrderNo
            ,op.sintPaymentTypeID
            ,op.strCurrencyCode
            ,op.strBCCurrencyCode
            ,op.decPaymentAmount
            ,op.decBCPaymentAmount
            ,ap.strAccountCode
            ,o.sintMarketID
            ,o.sintOrderChannelID
            ,o.sintOrderTypeID
            ,CASE   WHEN opgv.lngpaymentID IS NULL THEN NULL
                     -- Not …
Run Code Online (Sandbox Code Playgroud)

performance sql-server sql-server-2014 temporary-tables table-variable query-performance

8
推荐指数
1
解决办法
222
查看次数

如何在sql server中测试XML = ''?

我正在使用 sql server 2005,我遇到了可以在参数中传递许多值的情况。

基于此:为一个 SQL 参数传递多个值此过程使用 XML 作为参数。

这是存储过程的代码:

CREATE PROCEDURE [DENORMV2].[udpProductBulletPointSelectByTier1NoteTypeCode] (  
    @Tier1 VARCHAR(10),  
    @LanguageID INT,  
    @SeasonItemID VARCHAR(5) = NULL,
    @ListNoteTypeCode XML,  
    @CacheDuration INT OUTPUT )  
    WITH EXECUTE AS 'webUserWithRW'  
AS

        SELECT  pbp.Tier1, pbp.LanguageId, pbp.NoteText, pbp.NoteTypeCode,  
                pbp.NoteGroup, pbp.SortOrder  
        FROM    dbo.ProductBulletPoint pbp  

        WHERE   Tier1 = @Tier1 
          AND   LanguageId = @LanguageID 
          AND   (      SeasonItemId = @SeasonItemID  
                  OR
                       @SeasonItemID is null
                )

          AND pbp.NoteTypeCode IN (

                 SELECT  NoteTypeCode=BulletPoint.NoteTypeCode.value('./text()[1]', 'varchar(50)')
                   FROM  @ListNoteTypeCode.nodes('/BulletPoint/NoteTypeCode') AS BulletPoint ( NoteTypeCode )

          )

SELECT  @CacheDuration …
Run Code Online (Sandbox Code Playgroud)

performance sql-server-2005 xml sql-server optimization query-performance

8
推荐指数
2
解决办法
2万
查看次数

如何在 Sql Server 中编写统计数据?(使用 T-SQL)

这里有一个非常相似的问题:

为统计创建 SQL 脚本

但这不是我想要的。

我想完全取回我输入的内容。例如:

CREATE STATISTICS [_MM_STATS__745366020_7_1_4_5_2_3] 
ON [dbo].[ProductShipTax]
([TaxRegionId], [ProductShipTaxID], [TaxRate], [ItemNo], [DateFrom], [DateTo])
Run Code Online (Sandbox Code Playgroud)

我想要一个查询,它可以让我获得上面的确切脚本,以便我可以将它应用到不同的数据库。

这可能吗?

sql-server statistics metadata sql-server-2014

8
推荐指数
1
解决办法
9759
查看次数

如何格式化 OBJECT_DEFINITION 的输出,使其看起来与 sp_helptext 相同?

object_definitionsp_helptext都返回存储过程的源代码 - 但是如何object_definitionsp_helptext当前那样使用和获取包含换行符的源代码?

例如在下面的代码中,我创建了一个存储过程:

if OBJECT_ID('usp_radhe') is not null
   drop procedure usp_radhe
go
-- this procedure is just a test
-- it just returns a date in the past
-- how will I get its source code?
create procedure usp_radhe as 
begin
select dateadd(dd,-31,GETDATE()) 
end 
Run Code Online (Sandbox Code Playgroud)

使用sp_helptext我可以很好地查看源代码:

sp_helptext 'usp_radhe'
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

使用object_definition我在一行中获得源代码,这对我不利:

select OBJECT_DEFINITION(object_id('usp_radhe'))
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

sql-server metadata scripting sql-server-2016

7
推荐指数
3
解决办法
8156
查看次数