Tôi đang sử dụng Microsoft SQL Server Management Studio. Tôi có hai cơ sở dữ liệu một là cơ sở dữ liệu hệ thống, trong đó có cơ sở dữ liệu chủ và cơ sở dữ liệu khác là cơ sở dữ liệu của tôi được gọi là CCTNS_CAS_DE_DB
. Khi tôi cố gắng tạo báo cáo thông qua công cụ sử dụng cơ sở dữ liệu CCTNS_CAS_DE_DB
.Lỗi đối chiếu
tôi nhận được lỗi sau:
Cannot resolve the collation conflict between "Latin1_General_CI_AI" and "SQL_Latin1_General_CP1_CI_AS" in the equal to operation
tôi đã đi qua SQL Server và kiểm tra các thuộc tính của cơ sở dữ liệu tổng thể nó cho thấy collation như Latin1_General_CI_AI
nhưng khi tôi đến các thuộc tính của cơ sở dữ liệu CCTNS_CAS_DE_DB
nó cho thấy collation là SQL_Latin1_General_CP1_CI_AS
.
Tôi đã tìm kiếm lỗi trực tuyến nhưng hầu hết giải pháp cho biết cách thay đổi collation của một bảng cụ thể nhưng tôi không gặp bất kỳ truy vấn nào sẽ thay đổi collation cơ sở dữ liệu của tôi thành Latin1_General_CI_AI
.
Tôi đã xem qua một truy vấn đó là: -
ALTER DATABASE CCTNS_CAS_DE_DB COLLATE Latin1_General_CI_AI
Khi tôi chạy truy vấn này trong SQL Server của tôi nó đã ném các lỗi sau: -
Msg 5030, Level 16, State 2, Line 1
The database could not be exclusively locked to perform the operation.
Msg 5072, Level 16, State 1, Line 1
ALTER DATABASE failed. The default collation of database 'CCTNS_CAS_DE_DB' cannot be set to Latin1_General_CI_AI.
Tôi biết câu hỏi này đã được đăng ở đây nhưng đó là trong một bối cảnh khác nhau tôi nghĩ.
tôi thực hiện các truy vấn sau đây (ALTER DATABASE CCTNS_CAS_DE_DB đối chiếu Latin1_General_CI_AI; GO) và đã có thể thay đổi collation của CCTNS_CAS_DE_DB db của tôi để Latin1_General_CI_AI từ SQL_Latin1_General_CP1_CI_AS nhưng trong khi tạo ra các báo cáo nó cho thấy cùng một lỗi tức là không thể giải quyết xung đột đối chiếu giữa "Latin1_General_CI_AI" và "SQL_Latin1_General_CP1_CI_AS" trong hoạt động bằng nhau. – Nitin
Câu trả lời hay. cảm ơn – Behzad