Questions tagged «sql-server-2005»

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

6
相同(?)SQL Server 2005计算机;一个查询需要2秒,而另一个查询需要15分钟
环境: 我们有两台运行SQL Server 2005的32位Windows Server 2003 R2计算机。硬件配置是具有Xeon 5160 CPU,4GB RAM和13GB RAID0的相同服务器。未启用AWE和/ 3GB标志。 使用预定义的安装清单并排设置服务器,并且两台计算机上所有已安装的软件均相同。 我们知道要检查的每个SQL Server安装设置和补丁程序级别都是相同的。一个区别是,TEMPDB在快速计算机上为400MB,在慢速计算机上为1.2GB。但是,在两种情况下,我们都看不到任何TEMPDB分配。 问题: 有一个存储过程,其中一个运行2秒,而另一个运行15分钟。在接下来的15分钟内,几乎没有磁盘活动,没有内存使用情况发生变化,但是一个CPU核心始终固定为100%。 即使数据库从一个备份并还原到另一个数据库,此行为仍然存在。 由于这是一个存储过程,因此活动监视器和事件探查器不会向我们显示有关此高CPU活动在存储过程中何处发生的任何详细信息。 问题: 我们还要看什么? 跟进: 对于以下游标定义,慢速发生在FETCH NEXT语句中: DECLARE C CURSOR FOR SELECT X, Y FROM dbo.A WHERE X NOT IN (SELECT X FROM dbo.B) AND Z <=0 ... <snip> ... FETCH NEXT FROM …

2
SQL Server 2005中对可空列的唯一约束
在这个我正在从事的项目中,我需要将一个特定的字段设置为唯一(不是问题!),但是如果该字段为null,则希望忽略约束。在Sql Server 2008中,我使用如下所示的过滤索引,但是在早期版本的SQL中不可用! CREATE UNIQUE NONCLUSTERED INDEX User_UserName_IUC ON [User] (pinNr) WHERE UserName IS NOT NULL 但是我认为SQL Server 2005中不提供此功能。实际上,此博客文章指出,存在一种使用触发器检查唯一性的解决方法。有人有这样的例子吗?还是替代方案? 不幸的是,对于此特定客户端,无法升级到SQl Server 2008!

6
有人在实践中使用sqlcmd模式吗?[关闭]
按照目前的情况,这个问题并不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 SQLServer 2005引入了一种称为 SQLCMD模式的 msdn链接。 乍一看,此模式从命令行批处理文件添加了变量替换,并在OS命令中进行了一些转义。 在您的环境,生产或测试中使用此功能吗?

3
如何更改触发器的触发顺序?
真的,我很少使用触发器。所以我第一次遇到一个问题。我有很多带有触发器的表(每个表2个或更多)。我想知道并更改每个表的触发触发器的顺序。是否可以获取此信息? 添加: 这是我发现的有关mssqltips的一篇不错的文章。



1
这个颠倒的银钥匙图标是什么
我继承了一个SQL Server 2005第三方服务器和数据库,以能够生成报告和仪表板。 在一张桌子上,我找到了一个新图标:蓝银色的上下颠倒钥匙,以及其他主钥匙和外钥匙。 当我右键单击它时,上下文菜单为我提供了“脚本约束为”选项,但是当我尝试对其进行“修改”时,它将打开列设计表单(如主键),但是它出现在“索引”部分,而不是约束。 有人知道它的名字以及它的用途吗?

2
在位列上添加索引会大大降低插入速度吗?
我有一张桌子,上面有大约100万到500万条记录。该记录的一小部分将bit列之一设置为“ TRUE”。需要快速找到该记录。我认为该索引可以加快在此列上的搜索,但是我担心INSERT。因此,我的问题。 数据库的工作就像某种数据仓库,因此有很多SELECT和小的选择(每天最多10到20个),但有很大的INSERT(一次最多有20万条记录)。我担心导入数据库的时间较长。


2
如果我对一个数据库进行故障转移,那么共享相同镜像端点的其他数据库是否也会进行故障转移?
我们有两个用于在单个SQL Server实例上进行镜像的数据库设置:测试数据库和生产数据库。两者都使用完全相同的端点镜像到另一台服务器。 如果我进入测试数据库的“数据库属性”并单击“故障转移”按钮,由于两个数据库共享一个镜像端点,并且它们的“服务器网络地址”属性相同,它也会对生产数据库进行故障转移吗? 我很担心,因为当我为第二个数据库设置镜像时,我不必配置任何新内容。它只是使用了所有现有信息。 如果我使用“数据库属性”中的“故障转移”按钮,会导致对使用该端点的所有数据库进行故障转移,还是仅对我正在查看其属性的特定数据库进行故障转移?

2
SQL Server备份失败。错误:3041,严重性:16,状态:1
首先,我是stackexchange的新手,所以请多多包涵。 我正在运行SQL Server 9.0.4060。 我的问题是:我的SQL Server备份在很多数据库上一直失败。 维护计划将运行到不同的备份作业: 每天20:30进行DIFF备份,每个星期日在20:30进行完全备份。 我在无法完成备份的foreach数据库中遇到以下两个错误: Date 06-11-2012 20:31:06 Log SQL Server (Current - 07-11-2012 11:43:00) Source Backup Message BACKUP failed to complete the command BACKUP DATABASE (dbname) WITH DIFFERENTIAL. Check the backup application log for detailed messages. Date 06-11-2012 20:31:06 Log SQL Server (Current - 07-11-2012 …

2
将已发布的复制数据库的数据库兼容性级别从90更改为100的影响
我有一台SQL Server 2008 R2服务器,其中有一堆已发布的数据库,这些数据库当前在兼容级别90(2005)下运行。 订阅数据库也是SQL Server 2008 R2,但是目标数据库设置为兼容性级别100,并且复制工作正常。 如果更改发布数据库的兼容性级别,它将以任何方式影响复制,还是只是重新初始化所有订阅并重新启动复制的情况? 我怀疑更改已发布的数据库兼容性级别可能会稍微更改复制存储过程的功能,但是我不确定100%。 是这样吗

1
不屈服的IOCP侦听器
有人知道“不屈服的IOCP侦听器”指示什么吗? 在我们的SQL Server中,只有一个错误检查转储: ===================================================================== BugCheck Dump ===================================================================== This file is generated by Microsoft SQL Server version 9.00.5292.00 upon detection of fatal unexpected error. Please return this file, the query or program that produced the bugcheck, the database and the error log, and any other pertinent information with a Service Request. …

2
策略是要处理其中包含太多文件(BLOB)的SQL Server DB?
方案: 为ASP.NET应用程序提供服务的SQL Server 2005数据库(在单独的Web服务器上)。 数据库: DB中大约有5GB的“普通”数据,以及大约15GB的“文件”(例如,存储为图像的20万PDF(BLOB)之类的东西)。用户正在上传更多文件,并且正在迅速消耗更多磁盘空间(在未来几个月中,DB可能会增长到50GB,主要是文件)。 问题: 在数据库中存储如此多的文件已经引起了问题(例如:数据库的大容量使偶尔的整个DB备份和部署变得困难。)。 我们担心会有更多问题。(例如:性能问题-可能是由于无法将整个数据库保留在RAM中引起的,也许吗?) 问题: 您对这个问题有什么建议?将文件存储在文件系统中?将数据库分成两部分,并为文件分配一个更大,更慢的文件? 需要的更多详细信息: 这些文件不是非常重要,并且不需要非常快速的访问时间-几秒钟就可以了,目前,每小时最多可以选择十二个文件。数据库中的其他“正常”数据包含每秒需要多次的信息。

2
为什么“插入查询”之前的“开始交易”会锁定整个表?
我正在使用SQL Server 2005 Express。 在一种情况下,我在存储过程中Begin Transaction的INSERT语句之前添加了命令。当我执行此存储过程时,它锁定了整个表,并且所有并发连接都显示为挂起状态,直到INSERT完成为止。 为什么整个表都被锁定?如何在SQL Server 2005 Express中克服此问题? 已编辑 查询如下: INSERT INTO <table2> SELECT * FROM <table1> WHERE table1.workCompleted = 'NO'

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.