Char là chiều rộng cố định, Điều đó có nghĩa là kích thước lưu trữ của giá trị char bằng kích thước tối đa của cột / Biến.
/> Varchar là chiều dài thay đổi. Kích thước lưu trữ mà Varchar sử dụng phụ thuộc vào các ký tự thực được lưu.
Ví dụ 1:
Hãy tạo một vài biến, sau đó lưu cùng một chuỗi và kiểm tra bộ nhớ được sử dụng bởi hàm Datalength trong SQL Server. Khai báo @ Variable1 CHAR (20) Khai báo @ Variable2 VARCHAR (20) SET @ Variable1 ='TechBrothersIT'SET @ Variable2 =' TechBrothersIT'S chọn cường độ dữ liệu (@ Variable1) là VarLength1, cường độ dữ liệu (@ Variable2) là VarLength2
Sự khác biệt giữa CHAR và VARCHAR trong SQL Server - T-SQL Tutorial
Như bạn có thể xem ở trên, Char chiếm 20 Byte không gian cho 20 ký tự ngay cả khi chúng tôi chỉ lưu 14 ký tự. Mặt khác, Varchar chỉ sử dụng 14 byte để lưu trữ 14 ký tự.
Ví dụ 2:
Hãy tạo một bảng với hai cột, một lần là char và kiểu dữ liệu varchat khác. Lưu trữ cùng một thông tin và sau đó kiểm tra không gian bị chiếm bởi từng giá trị bằng cách sử dụng hàm độ mạnh dữ liệu. Tạo bảng dbo.CharVsVarChar (CHARName CHAR (50), VARName VARCHAR (50)) chèn vào dbo.CharVsVarCharGiá trị ('Aamir', 'Aamir'), ('TechBrothersIT', 'TechBrothersIT'), ('Raza', 'Raza') điChọn DataLength (CharName) AS CHARNameLength, DataLength (VarName) AS VarNameLength Từ dbo.CharVsVarCharChar so với Varchar trong SQL Server - Hướng dẫn SQL Server / T-SQLChúng ta có thể thấy rằng Char luôn chiếm cùng một không gian bất kể số hoặc ký tự được lưu. Mặt khác, không gian Varchar bị chiếm dụng thay đổi tùy theo số lượng ký tự được lưu.
Trong trường hợp chúng ta biết rằng chúng ta sẽ lưu trữ một số lượng ký tự cố định, chúng ta có thể sử dụng Char, nếu không thì sử dụng Varchar.
>