Chủ Nhật, 13 tháng 7, 2014

Thay đổi SQL Collation

SQL sử dụng Collation để so sánh các chuỗi ký tự (bảng mã), khi setup, SQL tự chọn mặt định một collation dựa trên các thiết lập của Windows, việc này thường gây ra lỗi khi chạy các ứng dụng sử dụng SQL và các bảng tạm (#(#)table trên Temp DB)

Cách 1: (với SQL 2005 trở lên???!!!)
- mở cmd (admin), go to folder setup of SQL
- setup /Quiet /Action=RebuildDatabase /InstanceName=MSSQLServer /SQLSysAdminAccounts=STDomain\Administrator /SAPWD=sqladm /SQLCollation=SQL_Latin1_General_CP1_CI_AS

Cách 2: (với SQL 2000)
- Backup & Detatch các Users DB
- Shutdown SQL và chạy chương trình có sẵn Rebuildm.exe (Program Files\Microsoft SQL Server\80\Tools\Binn)
- Browse tới thư mục Data của source cài đặt SQL (Chú ý: không phải thư mục Data trong thư mục cài đặt SQL). Nếu không có thì cứ copy cái thư mục DATA trong x86 của Source bỏ vào HDD rồi browse chỉ tới đấy
- Ở nút Settings, Click rồi tìm chọn cái Collation như mong muốn
Ví dụ: muốn Collation = SQL_Latin1_General_CP1_CI_AS
Thì chọn tùy chọn "SQL Collations (Used for...) và "Dictionary order, case-insensitive, for use with 1252 Character Set"

- Restart SQL & Restore/Attach user DB & test


Không có nhận xét nào:

Đăng nhận xét