小编GaT*_*mas的帖子

分区函数与聚集索引

我们有一个在身份/日期时间 2 上聚集的表。它在相同的 datetime2 上分区。是否有任何理由改为在 datetime2/identity 上进行集群?我通常理解聚类背后的原因,但是包含分区后,情况会发生变化吗?

index sql-server sql-server-2008-r2 partitioning

7
推荐指数
1
解决办法
2471
查看次数

获取记录的当前分区

在 SQL Server 2008 R2 中,如何确定记录当前位于哪个分区?

sql-server sql-server-2008-r2 partitioning

7
推荐指数
1
解决办法
9187
查看次数

备份/还原使用复制的数据库时 SQL Server 的注意事项

如果我需要还原涉及复制的数据库,我需要牢记哪些注意事项?

  • 我需要保留发布者和订阅者的备份吗?
  • 我可以只恢复发布者并让订阅者自动同步吗?
  • 如果订阅者崩溃,是否可以从备份中恢复并自动同步?

replication sql-server backup sql-server-2008-r2 restore

7
推荐指数
1
解决办法
1608
查看次数

将日期时间值填充到 datetime2 列中

今天在代码审查中看到这样的说法:

ALTER TABLE dbo.MyTable ADD CreateDate DATETIME2(0) NOT NULL DEFAULT GETUTCDATE()
Run Code Online (Sandbox Code Playgroud)

GETUTCDATE() 函数返回 a datetime,然后将其填充到datetime2列中。

这两种类型的不同有什么意义吗?使用 SYSUTCDATETIME() 创建datetime2值会更好吗?

sql-server datetime

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

使用或不使用 ISNULL(NULLIF(Field1, ''))?

在过去,我见过使用诸如

SELECT ISNULL(NULLIF(Field1, ''), 'NewValue')

简洁地获得回退值。

然而,自从 TSQL 中出现 CASE 以来,我们更喜欢一些类似的东西

SELECT CASE Field1 WHEN '' THEN 'NewValue' ELSE Field1 END

一个会比另一个表现更好吗?选择一个而不是另一个的其他原因是什么?

sql-server t-sql

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

ALLOW_SNAPSHOT_ISOLATION 持续时间

我想ALLOW_SNAPSHOT_ISOLATION在拥有约 4 亿条记录的生产数据库上启用。我知道每个记录需要添加 14 个字节。

如果我设置ALLOW_SNAPSHOT_ISOLATION它会阻塞一段时间与记录计数成正比,还是会异步更新数据?

首先,我想确保在启用此设置后,我的数据库不会在数小时内停止服务。

sql-server sql-server-2008-r2 snapshot-isolation

2
推荐指数
1
解决办法
361
查看次数