问题列表 - 第17页

SQL Server 2005 中可空列的唯一约束

在我正在进行的这个项目中,我需要将特定字段设置为唯一(不是问题!)但如果该字段为空,我希望忽略约束。在 Sql Server 2008 中,我使用如下所示的过滤索引,但这在早期版本的 SQL 中不可用!

CREATE UNIQUE NONCLUSTERED INDEX User_UserName_IUC
ON [User] (pinNr)
WHERE UserName IS NOT NULL
Run Code Online (Sandbox Code Playgroud)

但我不认为这在 SQL Server 2005 中可用。事实上,这篇博客文章表明有一种使用触发器来检查唯一性的解决方法。有没有人有这样的例子?或者也许是另一种选择?

不幸的是,升级到 SQL Server 2008 不是这个特定客户端的选项!!

sql-server-2005 sql-server constraint

12
推荐指数
2
解决办法
2223
查看次数

用于远程数据库的 SQL Server Management Studio

使用位于远程托管专用服务器上的 SQL Sever 数据库,我可以使用安装在同一台服务器或本地计算机上的 SQL Server Management Studio 进行工作。我是第一种情况,我应该使用远程桌面工作,这会使工作速度变慢。在第二种情况下,我需要在服务器的防火墙中打开额外的端口,但我会有更舒适的用户体验。

这两者的推荐做法是什么?

sql-server ssms

13
推荐指数
3
解决办法
5499
查看次数

什么是键/值存储数据库?

我一直在查看 NoSQL 的维基百科页面,它列出了键/值存储数据库的几个变体,但我找不到关于键/值存储在这种情况下的含义的任何详细信息。有人可以向我解释或链接解释吗?另外,我什么时候会使用这样的数据库?

nosql

57
推荐指数
5
解决办法
10万
查看次数

SQL Server Compact Edition 4 最终是否支持视图?

刚刚阅读了 SQL Server CE 4的发布,然后在他们的产品网站上搜索了所有内容,我仍然找不到功能概述。

以前版本的 SQL Server CE 不支持视图,我希望它们消除了限制。

我的问题是:

是否有列出 SQL Server CE 4 的功能和限制的页面?

(编辑:我发现此功能比较适用于 3.5,但不适用于 4.0)

features

6
推荐指数
1
解决办法
5391
查看次数

随机化表格内容并将它们存储回表格

我有一张至少有一百万条记录的表。这些行是由一个自定义应用程序创建的,该应用程序读取多个 SharePoint 网站集并将项目 URL 存储在表中。现在,由于我们以串行方式读取网站集,前几千行属于第一个网站集,接下来的几千行属于第二个网站集,依此类推。

我有另一个应用程序以顺序方式读取此表。但是,通过这种方式,我最终将 HTTP 请求发送到同一个网站集的时间更长。

我知道我可以从我的第二个应用程序中的表格中获得随机结果。但是,这不是一种选择。我无法改变第二个应用程序的工作方式。

现在,问题是:如何获取表中的所有行,将它们打乱并将其存储回表中?

更新:SQL Server 2008 R2 是我的数据库服务器

sql-server t-sql sql-server-2008-r2

4
推荐指数
1
解决办法
177
查看次数

完整计划缓存行为

在 SQL Server 2005 中,当计划缓存填满时会发生什么?我做了一些研究,从收集的点点滴滴来看,似乎缓存计划被赋予了一个“年龄”,其中包括它的重量或编译成本,乘以自缓存以来运行的次数。随着时间的推移,这个年龄递减,直到它达到 0,当它被认为“老化”并且是需要时冲洗的候选者。当计划缓存填满时,过时的计划将从缓存中刷新。

幕后是否还有其他事情使这种情况复杂化?

谢谢,

马特

sql-server-2005 sql-server

8
推荐指数
1
解决办法
609
查看次数

将数组参数传递给存储过程

我有一个进程可以抓取一堆记录(1000 条)并对它们进行操作,当我完成后,我需要将其中的大量记录标记为已处理。我可以用一个大的 ID 列表来表明这一点。我试图避免“循环更新”模式,所以我想找到一种更有效的方法来将这个 ID 包发送到 MS SQL Server 2008 存储过程中。

提案#1 - 表值参数。我可以定义一个只有一个 ID 字段的表类型,然后发送一个包含要更新的 ID 的表。

建议 #2 - XML 参数 (varchar) 和 OPENXML() 在 proc 主体中。

建议 #3 - 列表解析。如果可能的话,我宁愿避免这种情况,因为它看起来笨拙且容易出错。

其中有什么偏好,或者我错过了什么想法?

sql-server-2008 sql-server

63
推荐指数
7
解决办法
27万
查看次数

向此查询添加订单返回比不添加更快,为什么?

关于为什么向此查询添加排序的任何想法比没有 order by 的返回速度要快得多?我希望相反,那么什么会导致这种情况发生?

SELECT TOP (500) r.cID,r.aField,a.Description 
       FROM dbo.tblR r  
            inner join dbo.tblA a on r.aID = a.ID  
            left join dbo.tblX x on x.cID = r.cID 
       WHERE (ISNULL(x.anotherField,'') <> r.anotherField or x.field3 is null) 
            and (r.ID=(select max(ID) from tblR where cID = r.cID and
            ISNULL(aField,'') <> '')) 
            and r.cID in (select ID from tblC)
       ORDER BY r.cID ASC -- when I comment this line out it runs much slower
Run Code Online (Sandbox Code Playgroud)

执行计划没有多大帮助。

sql-server-2005 order-by

6
推荐指数
1
解决办法
2190
查看次数

对于具有 10,000 多个表的 MySQL 数据库,我应该查看什么样的硬件/软件配置

我正在考虑推出一个 CMS 系统,该系统需要在系统的主 MySQL 数据库中创建大约 10,000 个表。

该数据库将成为数百个小型网站前端的数据存储,每月可能会吸引大约 15 万独立访问者的适度负载,但这可能必须在短时间内扩展。

  1. 我正在寻找一些关于应该使用什么样的硬件既具有成本效益又能够在需要时进行扩展的建议。

  2. 我还想要一些关于软件配置的建议:即 MySQL 设置应该集群还是直接使用大量打开文件的 MySQL?

任何建议将不胜感激!

mysql

3
推荐指数
1
解决办法
531
查看次数

在哪里可以找到用于学习的数据库调优练习?

作为开发人员,DBA 通常负责解决数据库级别的性能问题,因此我们在诊断、调优、重构查询等方面没有太多经验。

我正在寻找一个包含大量表、数据、查询、触发器、SP 等的数据库,其中存在故意的性能问题,并希望有一系列练习,您可以在其中尝试识别和解决问题。理想情况下,这将在 MS SQL 服务器上。

有人知道这种事情吗?

sql-server database-tuning

32
推荐指数
2
解决办法
2367
查看次数