Questions tagged «sql-server-2008-r2»

使用此标记可以解决针对Microsoft SQL Server 2008 R2版本的特定问题。

17
超时时间已到。在操作完成之前超时或服务器没有响应。该语句已终止
我的网站上有很多用户(每天20000-60000),这是移动文件的下载网站。我可以远程访问服务器(Windows Server 2008-R2)。 我以前收到过“服务器不可用”错误,但是现在看到连接超时错误。 我对此并不熟悉-为什么会发生以及如何解决? 完整错误如下: “ /”应用程序中的服务器错误。超时时间已到。在操作完成之前超时或服务器没有响应。该语句已终止。说明:执行当前Web请求期间发生未处理的异常。请查看堆栈跟踪,以获取有关错误及其在代码中起源的更多信息。 异常详细信息:System.Data.SqlClient.SqlException:超时已过期。在操作完成之前超时或服务器没有响应。该语句已终止。 源错误: 当前Web请求的执行期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来标识有关异常的来源和位置的信息。 堆栈跟踪: [SqlException(0x80131904):超时已过期。在操作完成之前超时或服务器没有响应。该语句已终止。] System.Data.SqlClient.SqlConnection.OnError(SqlException异常,布尔型breakConnection )+404 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()+ 412 System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior ,SqlCommand cmdHandler,SqlDataReader dataStream,BulkCopySimpleResultSet bulkCopyHandler,TdsParserStateObject stateObj)+1363 System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds,RunBehavior runBehavior,字符串resetOptionsString)+6387741 System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior,RunBehavior runBehavior,布尔returnStream,布尔异步)+6389442 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior,RunBehavior runBehavior,Boolean resultB,StringResultA,StringResult 538 System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult结果,字符串methodName,布尔型sendToPipe)+689 System.Data.SqlClient.SqlCommand.ExecuteNonQuery()+ 327 NovinMedia.Data.DbObject.RunProcedure(StringstoredProcName,IDataParameter []参数,Int32和受影响的行)+209 DataLayer.OnlineUsers.Update_SessionEnd_And_Online(对象Session_End,布尔在线)+440 NiceFileExplorer.Global.Application_Start(对象发送者,EventArgs e)+163 [HttpException(0x80004005):超时已过期。在操作完成之前超时或服务器没有响应。该语句已终止。] System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode(HttpContext上下文,HttpApplication应用)+405205​​3 System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext,HttpContext上下文,MethodInfo []处理程序)+191 System.Web.HttpApplication。 InitSpecial(HttpApplicationState状态,MethodInfo …

12
杀死与数据库的所有连接的脚本(超过RESTRICTED_USER ROLLBACK)
我有一个开发数据库,​​该数据库经常从Visual Studio数据库项目中重新部署(通过TFS自动生成)。 有时,当我运行构建时,会出现以下错误: ALTER DATABASE failed because a lock could not be placed on database 'MyDB'. Try again later. ALTER DATABASE statement failed. Cannot drop database "MyDB" because it is currently in use. 我尝试了这个: ALTER DATABASE MyDB SET RESTRICTED_USER WITH ROLLBACK IMMEDIATE 但我仍然无法删除数据库。(我的猜测是大多数开发人员都dbo可以访问。) 我可以手动运行SP_WHO并开始终止连接,但是我需要一种自动方式来自动构建。(尽管这次我的连接是我要删除的数据库上的唯一连接。) 是否有一个脚本可以删除我的数据库,而不管连接了谁?

18
退出单用户模式
当前,我的数据库处于单用户模式。当我尝试扩展数据库时,出现错误: 无法访问数据库'my_db'(ObjectExplorer) 另外,当我尝试删除数据库时,出现错误: 目前无法更改数据库“ my_db”的状态或选项。数据库处于单用户模式,并且当前有用户连接到该数据库。 如何退出单用户模式?我没有任何用户使用此数据库。 当我尝试使用IIS浏览站点时,出现的错误是: 当前Web请求的执行期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来标识有关异常的来源和位置的信息。 我感觉好像是单用户模式导致了这种情况。

8
如何检查SQL Server中存储过程或函数的最后更改日期
我需要检查上次更改功能的时间。我知道如何检查创建日期(在SQL Server Management Studio的函数属性窗口中)。 我发现在SQL Server 2000中无法检查修改日期(请看这篇文章:是否可以确定何时在SQL Server 2000中最后一次修改存储过程?) 是否可以在SQL Server 2008中进行检查?MS是否在允许检查它的系统表中添加了一些新功能?


9
选择SQL Server数据库大小
我如何查询我的sql服务器以仅获取数据库的大小? 我用这个 use "MY_DB" exec sp_spaceused 我懂了 : database_name database_size unallocated space My_DB 17899.13 MB 5309.39 MB 它返回了我不需要的几列,也许有一个技巧可以从此存储过程中选择database_size列? 我也尝试了这段代码: SELECT DB_NAME(database_id) AS DatabaseName, Name AS Logical_Name, Physical_Name, (size * 8) / 1024 SizeMB FROM sys.master_files WHERE DB_NAME(database_id) = 'MY_DB' 它给了我这个结果: DatabaseName Logical_Name Physical_Name SizeMB MY_DB MY_DB D:\MSSQL\Data\MY_DB.mdf 10613 MY_DB MY_DB_log …




8
使用row_number()进行SQL更新
我想用递增编号更新列CODE_DEST。我有: CODE_DEST RS_NOM null qsdf null sdfqsdfqsdf null qsdfqsdf 我想将其更新为: CODE_DEST RS_NOM 1 qsdf 2 sdfqsdfqsdf 3 qsdfqsdf 我已经试过这段代码: UPDATE DESTINATAIRE_TEMP SET CODE_DEST = TheId FROM (SELECT Row_Number() OVER (ORDER BY [RS_NOM]) AS TheId FROM DESTINATAIRE_TEMP) 这是行不通的,因为 ) 我也尝试过: WITH DESTINATAIRE_TEMP AS ( SELECT ROW_NUMBER() OVER (ORDER BY [RS_NOM] DESC) …


9
搜索表名
我使用以下内容在存储过程中搜索字符串: use DBname SELECT Name FROM sys.procedures WHERE OBJECT_DEFINITION(OBJECT_ID) LIKE '%xxx%' 修改上述内容是否容易,以便在特定的数据库“ DBname”中搜索表名称?

6
计算两点之间的距离(纬度,经度)
我正在尝试计算地图上两个位置之间的距离。我已在数据中存储:经度,纬度,X POS,Y POS。 我以前一直在使用以下代码段。 DECLARE @orig_lat DECIMAL DECLARE @orig_lng DECIMAL SET @orig_lat=53.381538 set @orig_lng=-1.463526 SELECT *, 3956 * 2 * ASIN( SQRT( POWER(SIN((@orig_lat - abs(dest.Latitude)) * pi()/180 / 2), 2) + COS(@orig_lng * pi()/180 ) * COS(abs(dest.Latitude) * pi()/180) * POWER(SIN((@orig_lng - dest.Longitude) * pi()/180 / 2), 2) )) AS …

4
如何从SQL Server中的表查询Xml值和属性?
我有一个包含一Xml列的表: SELECT * FROM Sqm xml行数据的示例为: <Sqm version="1.2"> <Metrics> <Metric id="TransactionCleanupThread.RecordUsedTransactionShift" type="timer" unit="µs" count="1" sum="21490" average="21490" minValue="73701" maxValue="73701" >73701</Metric> <Metric id="TransactionCleanupThread.RefundOldTrans" type="timer" unit="µs" count="1" sum="184487" average="184487" minValue="632704" maxValue="632704" >632704</Metric> <Metric id="Database.CreateConnection_SaveContextUserGUID" type="timer" unit="µs" count="2" sum="7562" average="3781" minValue="12928" maxValue="13006" standardDeviation="16" >12967</Metric> <Metric id="Global.CurrentUser" type="timer" unit="µs" count="6" sum="4022464" average="670411" minValue="15" maxValue="13794345" standardDeviation="1642047">2299194</Metric> …

4
可以使用DISTINCT进行分区函数COUNT()的覆盖
我正在尝试编写以下内容,以便获得不同的NumUser的总运行量,如下所示: NumUsers = COUNT(DISTINCT [UserAccountKey]) OVER (PARTITION BY [Mth]) Management Studio对此不太满意。当我删除DISTINCT关键字时,错误消失了,但是不会有明显的区别。 DISTINCT在分区功能中似乎不可行。我该如何找到不同的计数?我是否使用更传统的方法,例如相关子查询? 进一步研究一下,也许这些OVER功能与Oracle的工作方式不同,无法使用它们SQL-Server来计算运行总计。 我在SQLfiddle上添加了一个实时示例,在该示例中,我尝试使用分区函数来计算运行总计。

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.