标签: sql-server-2012

如何移动 SQL Server 数据库文件?

我有一个数据库,想将.mdf.ldf文件移动到另一个位置。但是我不想停止MSSQLSERVER服务,也不想导出到另一台服务器。

我怎样才能做到这一点?

sql-server backup sql-server-2012

138
推荐指数
6
解决办法
39万
查看次数

SQL Server 数据库卡在恢复状态

我有一个 Sharepoint 服务器。我们的备份工具出现问题,现在我的一些数据库卡在恢复状态!

显示还原数据库的图像

是否可以停止恢复过程?还有,我怎样才能确保数据库的完整性没有受到损害?

sql-server sql-server-2008-r2 sql-server-2012

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

SQL Server 就地升级是否像过去一样不明智?

自 SQL Server 6.5 以来,我一直在使用 SQL Server,但仍然萦绕在我脑海中的旧建议是永远不要进行就地升级。

我目前正在将我的 2008 R2 DEV 和 TEST 系统升级到 SQL Server 2012,并且需要使用相同的硬件。不必恢复我的报告服务配置的想法非常有吸引力,我真的很聪明。不涉及分析服务或任何不寻常或非标准的东西——只安装了数据库引擎和报告服务。

有没有人遇到过就地升级的严重问题?或者我应该重新评估我对就地升级的立场?

sql-server migration ssrs upgrade sql-server-2012

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

如何使用表值函数连接表?

我有一个用户定义的函数:

create function ut_FooFunc(@fooID bigint, @anotherParam tinyint)
returns @tbl Table (Field1 int, Field2 varchar(100))
as
begin
  -- blah blah
end
Run Code Online (Sandbox Code Playgroud)

现在我想在另一张桌子上加入这个,就像这样:

select f.ID, f.Desc, u.Field1, u.Field2
from Foo f 
join ut_FooFunc(f.ID, 1) u -- doesn't work
where f.SomeCriterion = 1
Run Code Online (Sandbox Code Playgroud)

换句话说,所有的Foo记录,其中SomeCriterion1,我想看到的Foo IDDesc,旁边的值Field1,并Field2认为从返回ut_FooFunc的的输入Foo.ID

这样做的语法是什么?

join sql-server syntax sql-server-2012 functions

66
推荐指数
1
解决办法
12万
查看次数

使用窗口函数的日期范围滚动总和

我需要计算一个日期范围内的滚动总和。为了说明,使用AdventureWorks 示例数据库,以下假设语法将完全满足我的需要:

SELECT
    TH.ProductID,
    TH.TransactionDate,
    TH.ActualCost,
    RollingSum45 = SUM(TH.ActualCost) OVER (
        PARTITION BY TH.ProductID
        ORDER BY TH.TransactionDate
        RANGE BETWEEN 
            INTERVAL 45 DAY PRECEDING
            AND CURRENT ROW)
FROM Production.TransactionHistory AS TH
ORDER BY
    TH.ProductID,
    TH.TransactionDate,
    TH.ReferenceOrderID;
Run Code Online (Sandbox Code Playgroud)

遗憾的是,RANGE窗口框架范围目前在 SQL Server 中不允许间隔。

我知道我可以使用子查询和常规(非窗口)聚合编写解决方案:

SELECT 
    TH.ProductID,
    TH.TransactionDate,
    TH.ActualCost,
    RollingSum45 =
    (
        SELECT SUM(TH2.ActualCost)
        FROM Production.TransactionHistory AS TH2
        WHERE
            TH2.ProductID = TH.ProductID
            AND TH2.TransactionDate <= TH.TransactionDate
            AND TH2.TransactionDate >= DATEADD(DAY, -45, TH.TransactionDate)
    )
FROM Production.TransactionHistory AS TH
ORDER BY
    TH.ProductID,
    TH.TransactionDate, …
Run Code Online (Sandbox Code Playgroud)

performance sql-server t-sql sql-server-2012 window-functions query-performance

59
推荐指数
5
解决办法
5万
查看次数

与 2008 R2 相比,更喜欢 SQL Server 2012 的客观商业原因是什么?

我的公司正面临为新的数据库服务器购买 SQL Server 2012 Denali 还是 SQL Server 2008 R2 的决定。我正在寻找客观的理由来选择一个。

我们的要求:

  • 标准版(出于经济原因和不需要企业功能)
  • OLTP 工作负载(这意味着我们不需要新的窗口函数和列存储索引)
  • 数据库大小 10-100 GB
  • 不需要商业智能功能。只需要关系引擎
  • 同步数据库镜像

目前,我知道以下原因:

SQL Server 2012 德纳利

  • 最新版本可用

SQL Server 2008 R2

  • 成熟的技术

我似乎找不到很多技术原因来偏爱其中一个。基本上,这归结为选择成功运行的成熟技术与可用的最新和最好的版本。

做出决定的客观原因是什么?

sql-server-2008 sql-server sql-server-2008-r2 sql-server-2012

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

重新索引会更新统计信息吗?

上周我一直在做 MS10775A 课程,出现了一个培训师无法可靠回答的问题是:

重新索引会更新统计信息吗?

我们发现网上的讨论都在争论它有没有。

index sql-server statistics index-tuning sql-server-2012

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

我可以在本地安装 SQL Server Management Studio 吗?

我可以在桌面上安装 SQL Server Management Studio 以访问 SQL Server 2012 实例上的数据库吗?

如果是这样,我在哪里可以找到安装程序?Google 搜索仅返回“express”版本,而我正在寻找完整的 SQL Server Management Studio。

sql-server ssms installation sql-server-2012

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

SQL Server 代理作业和可用性组

我正在寻找处理 SQL Server 2012 可用性组中计划的 SQL Server 代理作业的最佳实践。也许我错过了一些东西,但是在目前的状态下,我觉得 SQL Server 代理并没有真正与 SQL2012 的这个强大功能集成在一起。

如何让计划的 SQL 代理作业知道节点切换?例如,我有一个在主节点上运行的作业,它每小时加载数据。现在,如果主要服务器出现故障,我如何激活现在成为主要服务器的辅助服务器上的作业?

如果我总是在辅助上安排作业,它会失败,因为辅助是只读的。

sql-server sql-server-2012 sql-server-agent availability-groups

43
推荐指数
3
解决办法
4万
查看次数

检查用户是否存在于 SQL Server 数据库中

我正在使用 SQL Server 2012。我想在将用户添加到数据库之前检查用户是否存在。

这是我测试过的:

USE [MyDatabase]
GO

IF NOT EXISTS (SELECT name 
                FROM [sys].[server_principals]
                WHERE name = N'IIS APPPOOL\MyWebApi AppPool')
Begin
    CREATE USER [IIS APPPOOL\MyWebApi AppPool] 
    FOR LOGIN [IIS APPPOOL\MyWebApi AppPool] WITH DEFAULT_SCHEMA=[dbo]
end
ALTER ROLE [db_owner] ADD MEMBER [IIS APPPOOL\MyWebApi AppPool]
GO
Run Code Online (Sandbox Code Playgroud)

但是,SELECT name FROM [sys].[server_principals]如果该用户存在于MyDatabase.

如何检查用户是否存在于MyDatabase

sql-server sql-server-2012

42
推荐指数
3
解决办法
10万
查看次数