Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Toán tử LIKE có phân biệt chữ hoa chữ thường với MSSQL Server không?

Nó không phải là toán tử phân biệt chữ hoa chữ thường, nó là chính cột.

Khi cài đặt SQL Server được thực hiện, một đối chiếu mặc định được chọn cho phiên bản. Trừ khi được đề cập rõ ràng theo cách khác (kiểm tra mệnh đề đối chiếu bên dưới) khi một cơ sở dữ liệu mới được tạo, nó kế thừa đối chiếu từ phiên bản và khi một cột mới được tạo, nó kế thừa đối chiếu từ cơ sở dữ liệu mà nó thuộc về.

Đối chiếu như sql_latin1_general_cp1_ci_as chỉ định cách xử lý nội dung của cột. CI là viết tắt của phân biệt chữ hoa chữ thường và AS là viết tắt của phân biệt trọng âm.

Danh sách đầy đủ các ảnh ghép có sẵn tại https://msdn.microsoft.com/en-us/library/ms144250(v=sql.105).aspx

(a) Để kiểm tra đối chiếu phiên bản

select serverproperty('collation')

(b) Để kiểm tra đối chiếu cơ sở dữ liệu

select databasepropertyex('databasename', 'collation') sqlcollation

(c) Để tạo cơ sở dữ liệu bằng cách sử dụng đối chiếu khác

create database exampledatabase
collate sql_latin1_general_cp1_cs_as 

(d) Để tạo một cột bằng cách sử dụng đối chiếu khác

create table exampletable (
    examplecolumn varchar(10) collate sql_latin1_general_cp1_ci_as null
)

(e) Để sửa đổi đối chiếu cột

alter table exampletable
alter column examplecolumn varchar(10) collate sql_latin1_general_cp1_ci_as null

Có thể thay đổi đối tượng và đối chiếu cơ sở dữ liệu nhưng nó không ảnh hưởng đến các đối tượng đã tạo trước đó.

Cũng có thể thay đổi đối chiếu cột một cách nhanh chóng để so sánh chuỗi, nhưng điều này rất không được khuyến khích trong môi trường sản xuất vì nó cực kỳ tốn kém.

select
  column1 collate sql_latin1_general_cp1_ci_as as column1
from table1


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server 2008 chuyển kiểu dữ liệu làm tham số cho hàm

  2. SQL Server:Tôi có nên sử dụng bảng information_schema trên bảng sys không?

  3. Giới thiệu về bảng tạm thời trong SQL Server

  4. SQL Server FOR XML Path tạo các nút lặp lại

  5. Sử dụng CPU của cơ sở dữ liệu?