SQL Server NCHAR

Khám Phá NCHAR Trong SQL Server

NCHAR là một trong những kiểu dữ liệu trong SQL Server, được sử dụng để lưu trữ chuỗi ký tự có độ dài cố định. Kiểu dữ liệu này rất hữu ích khi bạn cần lưu trữ các ký tự Unicode, đặc biệt là trong các hệ thống đa ngôn ngữ hoặc khi bạn xử lý các ký tự phi ASCII.

Định Nghĩa NCHAR

NCHAR (National character) là kiểu dữ liệu cho phép lưu trữ các ký tự Unicode. Khi bạn sử dụng NCHAR, mỗi ký tự sẽ chiếm một dung lượng là 2 byte, điều này giúp lưu trữ các ký tự từ nhiều ngôn ngữ khác nhau một cách hiệu quả.

Cú Pháp

Cú pháp để định nghĩa một cột NCHAR trong SQL Server như sau:

NCHAR(n)

Trong đó:

  • n: Số lượng ký tự mà cột NCHAR sẽ lưu trữ, có thể từ 1 đến 4,000. (Lưu ý: Nếu bạn cần lưu trữ nhiều hơn 4,000 ký tự, hãy sử dụng kiểu dữ liệu NVARCHAR hoặc NTEXT).

Ví Dụ Sử Dụng NCHAR

Dưới đây là một vài ví dụ minh họa cách sử dụng NCHAR trong SQL Server.

1. Tạo Bảng Với Cột NCHAR

CREATE TABLE Users (
    UserID INT PRIMARY KEY,
    UserName NCHAR(50)
);

Trong ví dụ trên, bảng Users được tạo ra với cột UserName có kiểu dữ liệu NCHAR với độ dài tối đa là 50 ký tự.

2. Chèn Dữ Liệu Với Cột NCHAR

INSERT INTO Users (UserID, UserName) VALUES (1, N'Nguyễn Văn A');
INSERT INTO Users (UserID, UserName) VALUES (2, N'李小龙');

Ở đây, chúng ta chèn hai người dùng vào bảng Users. Như bạn thấy, chúng ta đã sử dụng ký tự N trước chuỗi để biểu thị rằng đây là ký tự Unicode.

3. Truy Vấn Dữ Liệu Từ Bảng

SELECT * FROM Users;

Khi thực hiện truy vấn trên, bạn sẽ thấy các bản ghi đã chèn vào bảng, với UserName hiển thị chính xác các ký tự Unicode.

4. Cập Nhật Dữ Liệu Trong Cột NCHAR

UPDATE Users SET UserName = N'Nguyễn Văn B' WHERE UserID = 1;

Ví dụ trên sẽ cập nhật tên người dùng có UserID là 1 thành 'Nguyễn Văn B'.

Kết Luận

NCHAR là một kiểu dữ liệu hữu ích trong SQL Server, cho phép lưu trữ các ký tự Unicode một cách hiệu quả. Kiểu dữ liệu này rất quan trọng khi bạn làm việc với các ứng dụng đa ngôn ngữ hoặc cần xử lý các ký tự phi ASCII. Hy vọng bài viết này sẽ giúp bạn hiểu rõ hơn về cách sử dụng NCHAR trong SQL Server.