Questions tagged «sql-server-2012»

SQL Server 2012(主要版本11.00.xxxx)。还请标记sql-server。



5
是否建议SQL Server就地升级不如从前?
从SQL Server 6.5开始,我就一直在使用SQL Server进行断断续续的工作,至今仍然在我脑海中响起的那条老建议是永远不要进行就地升级。 我目前正在将我的2008 R2 DEV和TEST系统升级到SQL Server 2012,并且需要使用相同的硬件。不必还原我的Reporting Services配置的想法非常吸引人,我真的很不明智。没有涉及分析服务,也没有任何异常或非标准的服务-仅安装了数据库引擎和报告服务。 有没有人遇到就地升级的严重问题?还是应该重新评估就地升级的立场?

6
使用窗口功能的日期范围滚动总和
我需要计算日期范围内的滚动总和。为了说明这一点,使用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; 可悲的是,RANGE窗口框架范围当前在SQL Server中不允许间隔。 我知道我可以使用子查询和常规(非窗口)聚合来编写解决方案: SELECT TH.ProductID, TH.TransactionDate, TH.ActualCost, RollingSum45 = ( SELECT SUM(TH2.ActualCost) FROM Production.TransactionHistory AS TH2 …

2
如何用表值函数联接表?
我有一个用户定义的函数: create function ut_FooFunc(@fooID bigint, @anotherParam tinyint) returns @tbl Table (Field1 int, Field2 varchar(100)) as begin -- blah blah end 现在,我想将其加入另一个表,如下所示: 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 换句话说,对于所有Foo记录,其中SomeCriterion均为1,我想查看Foo ID和Desc以及输入所返回的Field1和的值。Field2ut_FooFuncFoo.ID 这样做的语法是什么?

4
在2008 R2上优于SQL Server 2012的客观业务原因是什么?
我的公司正在决定是否要为新的数据库服务器购买SQL Server 2012 Denali或SQL Server 2008 R2。我正在寻找客观原因来选择一个。 我们的要求: 标准版(出于财务原因,并且不需要企业功能) OLTP工作负载(这意味着我们不需要新的窗口功能和列存储索引) 数据库大小10-100 GB 无需商业智能功能。只需要关系引擎 同步数据库镜像 目前,我知道以下原因: SQL Server 2012 Denali 最新版本 SQL Server 2008 R2 成熟的技术 我似乎找不到很多技术原因来偏爱一个。基本上,归结为选择能够成功运行的可靠技术,而不是可用的最新和最佳版本。 做出决定的客观原因是什么?



8
在SQL Server 2012上,select *是否仍然是一大禁忌?
在过去的日子里,它被认为是一个很大的禁忌,select * from table或者select count(*) from table因为性能受到影响。 在更高版本的SQL Server中是否仍然如此(我使用的是2012,但我想这个问题将适用于2008-2014)? 编辑:由于人们似乎在这里对我有些偏颇,所以我正在从基准/流行病的角度看待这个问题,而不是是否要做“正确”的事情(当然不是)


6
Management Studio System.OutOfMemoryException
我正在使用Microsoft SQL Server 2012,并尝试在Management Studio中对其执行简单查询。我收到以下错误(在SSMS中,在服务器上运行): 执行批处理时发生错误。错误消息是:引发类型'System.OutOfMemoryException'的异常。 系统已安装24GB RAM,但在任务管理器中查找sql​​servr.exe进程仅使用2.9GB。 是否存在某个设置会限制其RAM使用率?

2
SQL Server不可预测的选择结果(dbms错误?)
下面是一个简单的示例,它返回的结果很奇怪,这些结果是无法预测的,我们无法在团队中进行解释。我们是在做错什么还是SQL Server错误? 经过一番调查,我们将搜索范围缩小为子查询中的union子句,该子查询从“ men”表中选择一条记录 它可以在SQL Server 2000中正常工作(返回12行),但是在2008年和2012年,它仅返回一行。 create table dual (dummy int) insert into dual values (0) create table men ( man_id int, wife_id int ) -- there are 12 men, 6 married insert into men values (1, 1) insert into men values (2, 2) insert into men values (3, …

8
SQL Server代理作业和可用性组
我正在寻找在SQL Server 2012可用性组中处理计划的SQL Server代理作业的最佳实践。也许我错过了一些东西,但是在当前状态下,我觉得SQL Server Agent并没有真正与这一出色的SQL2012功能集成在一起。 如何使计划的SQL代理作业知道节点切换?例如,我有一个在主节点上运行的作业,该作业每小时加载一次数据。现在,如果主服务器出现故障,我如何激活现在成为主服务器的辅助服务器上的作业? 如果我将作业始终安排在辅助服务器上,则它将失败,因为辅助服务器是只读的。

2
为什么Denali序列的性能要优于Identity列?
在他对哪个更好的回答中:标识列或生成的唯一ID值?麦丁妮说: 当SQL Denali发布时,它将支持比身份更有效的序列,但是您自己无法创建更有效的序列。 我不确定。了解Oracle的序列后,我要么创建一个插入触发器,要么将每个插入封装到存储过程的调用中,要么祈祷当我进行临时插入时不要忘记正确使用序列。 我怀疑序列的优势是否如此明显。

2
什么时候适合使用SQL Server Developer Edition?[关闭]
您是否在DEV和STAGING环境中的服务器级计算机上使用SQL Server Developer Edition? 我正在做一个大型项目,其中(如果它通过了概念验证阶段),我们将有几台大型地理分布的企业级数据库服务器,运行SQL Server 2012 Enterprise Edition。 我们将有一个生产环境,最初将有3个服务器,我们的登台环境将至少有3个服务器,而我们的开发环境将有1个服务器(承载3个实例)。 我的印象是,我们只需要为实际生产服务器获取企业许可证,并且由于它们不是“生产”,因此我们可以在开发人员和登台环境中获得开发人员版本。 其他消息来源告诉我,我们需要在所有上述计算机上获得企业许可证,并且开发人员版仅适用于其工作站上的单个开发人员。 由于开发人员版具有Enterprise的所有性感功能,因此我无法在工作站级计算机上真正看到它的价值,尤其是对于开发和测试我们正在构建的高可用性系统的类型。 如果我们必须为开发服务器支付企业许可证,那将扼杀我们的概念验证阶段,从而扼杀该项目。在过渡环境上强制使用企业许可证将使管理人员只想完全跳过过渡。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.