Questions tagged «sql-server-2005»

使用此标记可以解决特定于Microsoft SQL Server 2005版本的问题。

1
如何获取多个列以用于游标循环?
当我尝试在游标循环内运行以下SQL代码段时, set @cmd = N'exec sp_rename ' + @test + N',' + RIGHT(@test,LEN(@test)-3) + '_Pct' + N',''COLUMN''' 我收到以下消息, 消息15248,级别11,状态1,过程sp_rename,第213 行参数@objname不明确或声明的@objtype(COLUMN)错误。 有什么问题,我该如何解决?我尝试将列名称包装在方括号中[],并使用双引号括起来,""例如建议的某些搜索结果。 编辑1- 这是整个脚本。如何将表名传递给重命名sp?我不确定该怎么做,因为列名在许多表之一中。 BEGIN TRANSACTION declare @cnt int declare @test nvarchar(128) declare @cmd nvarchar(500) declare Tests cursor for SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME LIKE 'pct%' AND TABLE_NAME LIKE 'TestData%' …

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
SQL Server 2005实现MySQL替换成INTO?
MySQL具有非常有用但专有的REPLACE INTOSQL命令。 可以在SQL Server 2005中轻松模拟吗? 开始一个新的事务,先执行aSelect()然后再执行UPDATEor或INSERTandCOMMIT总是很麻烦,尤其是在应用程序中执行该操作时,因此始终保留该语句的2个版本。 我想知道是否有一种简单且通用的方法将这种功能实现到SQL Server 2005中?

5
如何将数据从SQL Server 2005导出到MySQL [关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Stack Overflow的主题。 8年前关闭。 改善这个问题 我一直在SQL Server 2005努力尝试避免获取大量数据。我已经获得了一个包含近300个表的数据库,我需要将其转换为MySQL数据库。我的第一个电话是使用bcp,但不幸的是,它不会产生有效的CSV-字符串未封装,因此您不能处理其中包含逗号的字符串的任何行(或用作分隔符的任何行)而且我仍然必须手写所有的create table语句,因为显然CSV不会告诉您有关数据类型的任何信息。 最好是如果有一些工具可以同时连接到SQL Server和MySQL,然后进行复制。您会丢失视图,存储过程,触发器等,但是将仅使用基本类型的表从一个数据库复制到另一个数据库并不难...是吗? 有人知道这样的工具吗?只要它支持整数,浮点数,日期时间和字符串,我都不介意它会做出多少假设或会发生什么简化。无论如何,我都必须进行大量的修剪,规范化等工作,因此我不在乎保留键,关系或类似的东西,但是我需要快速的初始数据集!

4
在SQL Server XML数据类型上使用LIKE语句
如果您有varchar字段,则可以轻松SELECT * FROM TABLE WHERE ColumnA LIKE '%Test%'查看该列是否包含某个字符串。 您如何针对XML类型执行此操作? 我有以下内容,仅返回具有“文本”节点的行,但我需要在该节点内搜索 select * from WebPageContent where data.exist('/PageContent/Text') = 1



8
简单的DateTime SQL查询
如何查询一定范围内的DateTime数据库字段? 我正在使用SQL SERVER 2005 错误代码如下 SELECT * FROM TABLENAME WHERE DateTime >= 12/04/2011 12:00:00 AM AND DateTime <= 25/05/2011 3:53:04 AM 请注意,我需要获取特定时间范围内的行。例如,10分钟的时间范围。 目前,SQL返回的语法不正确,位于'12'附近。”



22
在SQL Server 2005中诊断死锁
我们在Stack Overflow SQL Server 2005数据库中看到了一些有害但罕见的死锁情况。 我附加了事件探查器,并使用这篇有关解决死锁的出色文章来建立跟踪配置文件,并捕获了许多示例。奇怪的是,死锁写入总是相同的: UPDATE [dbo].[Posts] SET [AnswerCount] = @p1, [LastActivityDate] = @p2, [LastActivityUserId] = @p3 WHERE [Id] = @p0 其他死锁语句有所不同,但通常是对posts表的一些琐碎,简单的读取。这个总是在僵局中被杀死。这是一个例子 SELECT [t0].[Id], [t0].[PostTypeId], [t0].[Score], [t0].[Views], [t0].[AnswerCount], [t0].[AcceptedAnswerId], [t0].[IsLocked], [t0].[IsLockedEdit], [t0].[ParentId], [t0].[CurrentRevisionId], [t0].[FirstRevisionId], [t0].[LockedReason], [t0].[LastActivityDate], [t0].[LastActivityUserId] FROM [dbo].[Posts] AS [t0] WHERE [t0].[ParentId] = @p0 确切地说,我们没有看到写/写死锁,而是看到了读/写。 目前,我们混合使用LINQ和参数化SQL查询。我们已经添加with (nolock)了所有的SQL查询。这可能有所帮助。我昨天还修复了一个(非常)写得不好的徽章查询,每次都要花费20秒以上的时间,而且每分钟都在运行。我希望这是一些锁定问题的根源! 不幸的是,大约2小时前,我又遇到了一个死锁错误。同样的症状,同样的罪魁祸首。 …

4
在调试期间监视SSIS中的变量
我在SSIS中有一个项目,并且添加了一个Execute SQL Task,它将其结果发送到变量。我想确认该值,因为我担心它会尝试将其写成结果集对象,而不是实际的整数(在这种情况下,我将返回COUNT)。 我的第一个想法只是在调试模式下运行它,然后将全局变量添加到“监视”窗口中。不幸的是,当我右键单击“监视”窗口时,“添加变量”的选项显示为灰色。我在这里想念什么? 我已经确认了我的变量设置正确,所以我对将脚本放入值或类似值的MsgBox之类的方法不感兴趣。为了将来参考,我希望能够在调试模式下监视变量。如果对此有某种限制,那么如果有人知道,我想知道所有这些的原因和原因。 我所能找到的每一个“教程”所提供的帮助都远远不足,我只能说“将变量添加到“监视”窗口并调试”,好像这样做绝对没有问题。 感谢您的任何见解!

10
将SQL DateTime舍入为午夜
我的SQL查询有一个小问题。我正在使用GETDATE函数,但是,假设我在下午5点执行脚本,它将在12/12/2011 5PM到12/18/2011 5PM之间提取记录。我怎样才能使整个12/12/2011的记录都拉起来-12/18/2011基本忽略时间。 我的剧本: WHERE Orders.OrderStatus = 'Shipped' AND Orders.ShipDate > (GETDATE()-6)

7
SQL Server ORDER BY日期,最后为空
我想按日期订购。我希望最近的日期排在第一位。这很容易,但是有许多记录为空,并且在任何有日期的记录之前。 我尝试了一些没有成功的事情: ORDER BY ISNULL(Next_Contact_Date, 0) ORDER BY ISNULL(Next_Contact_Date, 999999999) ORDER BY coalesce(Next_Contact_Date, 99/99/9999) 如何按日期排序并让空值排​​在最后?数据类型为smalldatetime。

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.