小编Den*_*kin的帖子

如何让特定登录仅在辅助副本上工作?

我们正在使用可读的辅助副本配置可用性组。登录名可以使用其连接字符串中的“ApplicationIntent=ReadOnly”连接到辅助副本。但是我们遇到了一个问题,可能会让我们在未来头疼。

如果在登录建立连接时由于任何原因辅助副本不可用,则无论是否使用“ApplicationIntent=ReadOnly”,此登录都将被定向到主副本。

所以,我的问题 - 如果特定登录配置为使用辅助副本,是否有任何方法可以禁止它们连接到主副本?

我的意思是如果主要副本无法将连接定向到次要副本,则应关闭连接而不是继续处理主要副本。

Microsoft SQL Server 2016 (SP2-CU1) (KB4135048) - 13.0.5149.0 (X64) 2018 年 5 月 19 日 09:41:57 版权所有 (c) Microsoft Corporation Enterprise Edition:Windows Server 2016 Standard 上的基于内核的许可(64 位) 10.0(内部版本 14393:)

sql-server availability-groups

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

哈萨克语不区分大小写排序规则中的字符问题

我对 \xd0\xa1yrillic 字符 'E' 和 'e' 有问题,当使用不区分大小写的排序规则时,它们应该相等。这对于除哈萨克语之外的所有校对都是正确的。

\n

我使用下面的查询检查了所有 CI 排序规则:

\n
SELECT 'DECLARE @Test_' + name + ' TABLE (\n    Code nvarchar(32) COLLATE ' + name + '\n)\n\nINSERT @Test_' + name + ' (Code)\nVALUES (N''\xd0\x95''), (N''\xd0\xb5'')\n\nSELECT ''' + name + ''', * FROM @Test_' + name + ' WHERE Code = N''\xd0\x95'' COLLATE ' + name \n\nFROM sys.fn_helpcollations()\nWHERE name LIKE '%CI%'\n
Run Code Online (Sandbox Code Playgroud)\n

对于所有排序规则,都会按预期返回两行,但哈萨克语除外。

\n

用于说明问题的示例查询:

\n
SET NOCOUNT ON;\n\nDECLARE @Test TABLE (\n    Code nvarchar(32) COLLATE Kazakh_90_CI_AS\n);\n\nDECLARE @UpperChar  nchar(1) = …
Run Code Online (Sandbox Code Playgroud)

sql-server collation

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