Kiểu dữ liệu BIT trong SQL Server

Kiểu dữ liệu BIT trong SQL Server

Trong hướng dẫn này, bạn sẽ học cách sử dụng kiểu dữ liệu BIT trong SQL Server để lưu trữ dữ liệu bit trong cơ sở dữ liệu.

Tổng quan về kiểu dữ liệu BIT

Kiểu dữ liệu BIT trong SQL Server là kiểu dữ liệu số nguyên có thể nhận giá trị 0, 1 hoặc NULL.

Sau đây minh họa cú pháp của kiểu dữ liệu BIT:

BIT

SQL Server tối ưu hóa việc lưu trữ các cột kiểu BIT. Nếu một bảng có 8 cột bit trở xuống, SQL Server sẽ lưu trữ chúng dưới dạng 1 byte. Nếu một bảng có 9 cột tối đa 16 bit, SQL Server lưu trữ chúng dưới dạng 2 byte, v.v.

SQL Server chuyển đổi giá trị chuỗi TRUE thành 1 và FALSE thành 0. Nó cũng chuyển đổi bất kỳ giá trị nào khác thành 1.

Ví dụ về kiểu dữ liệu BIT trong SQL Server

Câu lệnh sau tạo một bảng mới với một cột kiểu BIT:

CREATE TABLE test.sql_server_bit (
    bit_col BIT
);

Để INSERT một bit 1 vào cột kiểu bit, bạn sử dụng câu lệnh sau:

INSERT INTO test.sql_server_bit (bit_col)
OUTPUT inserted.bit_col
VALUES(1);

Đầu ra là:

bit_col
-------
1

(1 row affected)

Để chèn một bit 0 vào cột kiểu bit, bạn sử dụng câu lệnh sau:

INSERT INTO test.sql_server_bit (bit_col)
OUTPUT inserted.bit_col
VALUES(0);

Đây là kết quả:

bit_col
-------
0

(1 row affected)

Nếu bạn chèn một giá trị chuỗi True vào cột kiểu bit, SQL Server sẽ chuyển đổi nó thành bit 1:

INSERT INTO test.sql_server_bit (bit_col)
OUTPUT inserted.bit_col
VALUES ('True');

Sau đây là kết quả đầu ra:

bit_col
-------
1

(1 row affected)

Tương tự, SQL Server chuyển đổi giá trị chuỗi False thành bit 0:

INSERT INTO test.sql_server_bit (bit_col)
OUTPUT inserted.bit_col
VALUES ('False');

Sau đây là kết quả:

bit_col
-------
0

(1 row affected)

SQL Server chuyển đổi bất kỳ giá trị nonzero nào thành bit 1. Ví dụ:

INSERT INTO test.sql_server_bit (bit_col)
OUTPUT inserted.bit_col
VALUES (0.5); 

Sau đây là kết quả:

bit_col
-------
1

(1 row affected)

Trong hướng dẫn này, bạn đã học cách sử dụng kiểu dữ liệu BIT trong SQL Server để lưu trữ dữ liệu bit trong bảng.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *