我有一个数据库,想将.mdf和.ldf文件移动到另一个位置。但是我不想停止MSSQLSERVER服务,也不想导出到另一台服务器。
我怎样才能做到这一点?
我有一个 Sharepoint 服务器。我们的备份工具出现问题,现在我的一些数据库卡在恢复状态!

是否可以停止恢复过程?还有,我怎样才能确保数据库的完整性没有受到损害?
自 SQL Server 6.5 以来,我一直在使用 SQL Server,但仍然萦绕在我脑海中的旧建议是永远不要进行就地升级。
我目前正在将我的 2008 R2 DEV 和 TEST 系统升级到 SQL Server 2012,并且需要使用相同的硬件。不必恢复我的报告服务配置的想法非常有吸引力,我真的很聪明。不涉及分析服务或任何不寻常或非标准的东西——只安装了数据库引擎和报告服务。
有没有人遇到过就地升级的严重问题?或者我应该重新评估我对就地升级的立场?
我有一个用户定义的函数:
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 ID和Desc,旁边的值Field1,并Field2认为从返回ut_FooFunc的的输入Foo.ID。
这样做的语法是什么?
我需要计算一个日期范围内的滚动总和。为了说明,使用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
我的公司正面临为新的数据库服务器购买 SQL Server 2012 Denali 还是 SQL Server 2008 R2 的决定。我正在寻找客观的理由来选择一个。
我们的要求:
目前,我知道以下原因:
SQL Server 2012 德纳利
SQL Server 2008 R2
我似乎找不到很多技术原因来偏爱其中一个。基本上,这归结为选择成功运行的成熟技术与可用的最新和最好的版本。
做出决定的客观原因是什么?
sql-server-2008 sql-server sql-server-2008-r2 sql-server-2012
上周我一直在做 MS10775A 课程,出现了一个培训师无法可靠回答的问题是:
重新索引会更新统计信息吗?
我们发现网上的讨论都在争论它有没有。
我可以在桌面上安装 SQL Server Management Studio 以访问 SQL Server 2012 实例上的数据库吗?
如果是这样,我在哪里可以找到安装程序?Google 搜索仅返回“express”版本,而我正在寻找完整的 SQL Server Management Studio。
我正在寻找处理 SQL Server 2012 可用性组中计划的 SQL Server 代理作业的最佳实践。也许我错过了一些东西,但是在目前的状态下,我觉得 SQL Server 代理并没有真正与 SQL2012 的这个强大功能集成在一起。
如何让计划的 SQL 代理作业知道节点切换?例如,我有一个在主节点上运行的作业,它每小时加载数据。现在,如果主要服务器出现故障,我如何激活现在成为主要服务器的辅助服务器上的作业?
如果我总是在辅助上安排作业,它会失败,因为辅助是只读的。
sql-server sql-server-2012 sql-server-agent availability-groups
我正在使用 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 ×10
sql-server-2012 ×10
backup ×1
functions ×1
index ×1
index-tuning ×1
installation ×1
join ×1
migration ×1
performance ×1
ssms ×1
ssrs ×1
statistics ×1
syntax ×1
t-sql ×1
upgrade ×1