回答

收藏

校对错误

技术问答 技术问答 198 人阅读 | 0 人回复 | 2023-09-14

我正在使用Microsoft SQL Server Management
' M* `' L% v8 z% b1 f8 ^) OStudio。我有两个数据库,一个是系统数据库,它有master另一个是我的数据库CCTNS_CAS_DE_DB。当我试着用它的时候CCTNS_CAS_DE_DB在生成数据库工具报告时。
3 J+ T) r. o! R% K/ o! X% q- @$ w! g9 _我收到以下错误:" E5 B4 K( P# d" W! t5 w5 u% l* d( V; H8 S
等于操作解决不了 Latin1_General_CI_AI”和“ SQL_Latin1_General_CP1_CI_AS排序规则之间的冲突
2 o( E. k, Q2 D9 S0 f5 U% H
我通过SQL) S, Z) s, G9 @" ^; Z" Q9 g
Server并检查了master将排序规则显示为数据库的属性,Latin1_General_CI_AI但是当我访问的时候CCTNS_CAS_DE_DB当数据库属性显示排序规则时SQL_Latin1_General_CP1_CI_AS。- O% B+ l& X7 x! P
我在网上搜索错误,但大多数解决方案都解释了如何更改具体表格的排名规则,但我没有遇到任何查询将数据库排名规则更改为Latin1_General_CI_AI。/ }, p% r9 k/ F% }
我遇到了一个查询:
% P8 f; ]3 V4 ^) |# j! U" z; q# EALTER DATABASE CCTNS_CAS_DE_DB COLLATE Latin1_General_CI_AI当我在SQL Server在此查询中,它引发了以下错误:
* ~  M8 C& G  e& `5 K$ X6 Q- A新闻5030,等级16,状态2,行1( j$ _2 `& I0 e5 e- I
    在执行此操作之前,无法完全锁定数据库。
! `: u0 ^+ u2 C! t/ Z" l3 Q    消息5072,级别16,状态1,第一行" @1 e0 X7 C) B$ m6 @' `, T6 M
    ALTER DATABASE失败。数据库’CCTNS_CAS_DE_DB’默认排序规则不能设置为Latin1_General_CI_AI。& M2 f, ~; H* x1 P# A9 W) j
我知道这个问题已经在这里发布了,但我认为是在不同的背景下。1 @. l" p. H) k
                                                                6 I- V1 S5 r0 _
    解决方案:                                                                - c. M0 }8 x3 f1 w4 A( b( z9 G) `
                                                                这是您问题的最大暗示:, |3 t+ s& `( ?8 P- p) W
新闻5030,级别16,状态2,行1不能完全锁定数据库来执行此操作。* ?' S8 D. I2 v- `! V/ _7 _
你所需要做的就是运行ALTERDATABASE在句子之前,将数据库设置为单用户模式,然后在完成后将数据库设置为多用户模式。这将锁定数据库,并使其仅用于当前连接,这将使您成功运行ALTERDATABASE ... COLLATE语句。
2 F. l8 p: T) j  H您可以使用SQL Server Management Studio或T-SQL命令执行此操作。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则