Gần đây tôi đã cài đặt SQL Server 2008 và tôi đã chọn đối chiếu là trường hợp nhạy cảm. Tôi muốn làm cho nó không phân biệt chữ hoa chữ thường cho toàn bộ cá thể (không phải cho một cơ sở dữ liệu trong cá thể đó). Nếu tôi thay đổi collation hiện nó ảnh hưởng đến bất kỳ cơ sở dữ liệu hiện có? Nếu vậy, theo cách nào?Việc thay đổi collation SQL Server thành trường hợp không nhạy cảm với phân biệt chữ hoa chữ thường?
Việc thay đổi collation SQL Server thành trường hợp không nhạy cảm với phân biệt chữ hoa chữ thường?
Trả lời
Bạn về cơ bản cần chạy lại cài đặt để xây dựng lại cơ sở dữ liệu master
với collation mới. Bạn không thể thay đổi đối chiếu toàn bộ máy chủ theo bất kỳ cách nào khác.
Xem:
- MSDN: Setting and changing the server collation
- How to change database or server collation (ở giữa trang)
Cập nhật: nếu bạn muốn thay đổi collation của một cơ sở dữ liệu, bạn có thể nhận được collation hiện tại bằng cách sử dụng đoạn mã T-SQL này:
SELECT name, collation_name
FROM sys.databases
WHERE name = 'test2' -- put your database name here
này sẽ mang lại một cái gì đó có giá trị như:
Latin1_General_CI_AS
Các _CI
có nghĩa là "trường hợp nhạy cảm" - nếu bạn muốn trường hợp nhạy cảm, sử dụng _CS
vào chỗ của nó:
Latin1_General_CS_AS
Vì vậy T của bạn Lệnh SQL sẽ là:
ALTER DATABASE test2 -- put your database name here
COLLATE Latin1_General_CS_AS -- replace with whatever collation you need
Bạn có thể nhận danh sách tất cả các collations sẵn có trên máy chủ bằng cách sử dụng:
SELECT * FROM ::fn_helpcollations()
Bạn có thể thấy chiếu hiện hành máy chủ bằng cách sử dụng:
SELECT SERVERPROPERTY ('Collation')
Bạn có thể làm điều đó nhưng những thay đổi sẽ ảnh hưởng đến dữ liệu mới được chèn vào cơ sở dữ liệu. Về lâu dài theo như đề xuất ở trên. Ngoài ra còn có một số thủ thuật nhất định bạn có thể ghi đè lên collation, chẳng hạn như các tham số cho các thủ tục hoặc hàm được lưu trữ, các kiểu dữ liệu bí danh và các biến được gán cho collation mặc định của cơ sở dữ liệu. Quay lại đầu trang |||||||||||||||||||||||||||||||||||||||||||||||| Để thay đổi collation của một loại bí danh, bạn phải thả các bí danh và tái tạo nó.
Bạn có thể ghi đè đối chiếu mặc định của chuỗi ký tự bằng cách sử dụng mệnh đề COLLATE. Nếu bạn không chỉ định collation, chữ được gán cho collation mặc định của cơ sở dữ liệu. Bạn có thể sử dụng DATABASEPROPERTYEX để tìm collation hiện tại của cơ sở dữ liệu.
Bạn có thể ghi đè máy chủ, cơ sở dữ liệu hoặc đối chiếu cột bằng cách chỉ định collation trong mệnh đề ORDER BY của câu lệnh SELECT.
- 1. Trường hợp collation nhạy cảm trong MySQL
- 2. Không phân biệt chữ hoa chữ thường với Dynamic Linq
- 3. Trường hợp Rspec không phân biệt chữ hoa chữ thường
- 4. collation không hợp lệ SQL Server trường hợp
- 5. Tại sao SQL Server '=' so sánh không phân biệt chữ hoa chữ thường?
- 6. không phân biệt chữ hoa chữ thường số
- 7. Biến Bash: phân biệt chữ hoa chữ thường hay không?
- 8. Không phân biệt chữ hoa chữ thường không hoạt động
- 9. Kết hợp mẫu Lua phân biệt chữ hoa chữ thường
- 10. URL không phân biệt chữ hoa chữ thường với mod_rewrite
- 11. Thay thế không phân biệt chữ hoa chữ thường
- 12. Tên bảng có phân biệt chữ hoa chữ thường không?
- 13. Trường hợp không nhạy cảm #define
- 14. Chọn chuỗi và phân biệt chữ hoa chữ thường
- 15. XML có phân biệt chữ hoa chữ thường không?
- 16. REPLACE phân biệt chữ hoa chữ thường() trong SQL Server 2000
- 17. Trật tự không phân biệt chữ hoa chữ thường với ormlite và sqlite trong android
- 18. Cột chuỗi phân biệt chữ hoa chữ thường trong SQLAlchemy?
- 19. JavaScript: tìm kiếm phân biệt chữ hoa chữ thường
- 20. Loại.Không phân biệt chữ hoa chữ thường - WinRT
- 21. Hàm in_array không phân biệt chữ hoa chữ thường
- 22. Toán tử HQL giống như trường hợp tìm kiếm phân biệt chữ hoa chữ thường
- 23. GSON deserialize theo cách phân biệt chữ hoa chữ thường
- 24. Làm cách nào để thực hiện kết hợp chuỗi chính xác trên trường không phân biệt chữ hoa chữ thường?
- 25. OData và phân biệt chữ hoa chữ thường
- 26. hoàn thành tab cshell, trường hợp không nhạy cảm
- 27. Có cách nào trong Oracle để tạo cột không phân biệt chữ hoa chữ thường không?
- 28. không phân biệt chữ hoa chữ thường trong NSArray chứaObject:
- 29. Phân loại phân biệt chữ hoa chữ thường bằng Google Guava
- 30. Đường dẫn XML - không phân biệt chữ hoa chữ thường
Ok, cảm ơn thông tin. Bây giờ ít nhất tôi muốn thử thay đổi collation của cơ sở dữ liệu để làm cho nó không phân biệt chữ hoa chữ thường. Tôi đã tìm thấy 'ALTER DATABASE DEV_DB COLLATE [khóa không phân biệt chữ hoa chữ thường] này cho cùng một giá trị. Nhưng không chắc chắn về giá trị được sử dụng cho trường hợp không nhạy cảm. Bất kỳ sự trợ giúp nào trong đó đều đáng cảm ơn! – JPReddy