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

Trong SQL, để lưu trữ các giá trị logic người ta sử dụng kiểu dữ liệu bit. Tuy nhiên, vẫn còn nhiều người chưa hiểu về cách sử dụng và ý nghĩa của kiểu dữ liệu này. Vậy thì kiểu dữ liệu bit trong SQL server là gì? Bài viết này của Comdy sẽ chia sẻ chi tiết, cụ thể kiến thức này, cùng theo dõi nhé.

Tổng quan về kiểu dữ liệu bit trong SQL server 

Kiểu dữ liệu bit trong SQL server
Kiểu dữ liệu bit là một cách để biểu diễn kiểu dữ liệu true false trong sql

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. Đây cũng là một cách để biểu diễn kiểu dữ liệu true false trong sql.

Kiểu giá trị bit, số lượng bit ở trên mỗi giá trị được chỉ định rõ ràng về kích thước. Tham số kích thước giới hạn từ 1 – 64. Trong đó, 1 là giá trị mặc định của kích thước.

Sau đây minh họa cú pháp của kiểu dữ liệu bit in SQL server: 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

Ví dụ về kiểu dữ liệu BIT trong SQL Server
Hiểu sâu hơn về kiểu dữ liệu bit trong SQL server và cách dùng, ý nghĩa của nó qua ví dụ cụ thể

Để hiểu rõ hơn về bit datatype in sql server, cùng tìm hiểu ví dụ cụ thể. Câu lệnh sau tạo một bảng mới với một cột kiểu BIT trong sql server:

CREATE TABLE test.sql_server_bit (
    bit_col BIT
);

Để INSERT một bit 1 vào cột kiểu bit sql server, 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 mssql, 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 sql datatype 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 sql type 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 type in sql server 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)

Khi nào sử dụng type bit SQL server?

Ví dụ về kiểu dữ liệu BIT trong SQL Server
Sử dụng kiểu dữ liệu BIT trong SQL Server để lưu trữ giá trị logic, tiết kiệm không gian và biểu diễn trạng thái có thể có giá trị NULL

Bạn có thể sử dụng kiểu dữ liệu BIT type in sql trong các trường hợp sau:

Lưu trữ giá trị logic

Nếu bạn chỉ cần lưu trữ thông tin đơn giản như trạng thái kích hoạt/tắt, có/thiếu hoặc đúng/sai, kiểu dữ liệu data type bit là lựa chọn phù hợp nhất.

Ví dụ:

CREATE TABLE ExampleTable (
IsActive BIT
);

Tiết kiệm không gian lưu trữ

Kiểu dữ liệu BIT thường chiếm ít không gian lưu trữ hơn so với các kiểu dữ liệu BOOLEAN hoặc INT.

Biểu diễn trạng thái có thể có giá trị NULL

Nếu bạn muốn biểu diễn một trạng thái có thể không xác định hoặc chưa biết, bạn có thể sử dụng giá trị NULL.

Ví dụ:

CREATE TABLE ExampleTable (
IsProcessed BIT NULL
);

Tuy nhiên, bạn cần lưu ý rằng kiểu dữ liệu sql bit column thường được sử dụng trong các trường hợp đơn giản và không cần chính xác cao trong việc biểu diễn dữ liệu logic. Đối với các tình huống phức tạp hơn, hoặc khi bạn cần xử lý các phép toán logic phức tạp, các kiểu dữ liệu khác như BOOLEAN, INTEGER, hoặc CHAR(1) có thể phù hợp hơn.

Kiểu true false trong SQL server

Kiểu true false trong SQL server
Trong SQL Server sử dụng kiểu dữ liệu BIT để biểu diễn giá trị logic, trong MySQL hỗ trợ kiểu dữ liệu BOOLEAN
Trong SQL, kiểu dữ liệu chung để biểu diễn giá trị logic là BOOLEAN. Tuy nhiên, không phải tất cả các hệ quản trị cơ sở dữ liệu (DBMS) đều hỗ trợ kiểu dữ liệu BOOLEAN.

Cụ thể, trong SQL Server không có kiểu dữ liệu BOOLEAN trực tiếp. Thay vào đó, bạn có thể sử dụng kiểu dữ liệu BIT để biểu diễn giá trị logic.

Ví dụ:

CREATE TABLE ExampleTable (

    IsActive BIT
);
INSERT INTO ExampleTable (IsActive)
VALUES (1); — TRUE
INSERT INTO ExampleTable (IsActive)
VALUES (0); — FALSE

MySQL hỗ trợ kiểu dữ liệu BOOLEAN, nhưng thực tế nó được thay thế bằng TINYINT(1) hoặc BOOL.

Ví dụ:
CREATE TABLE ExampleTable (
    IsActive BOOLEAN
);
INSERT INTO ExampleTable (IsActive)
VALUES (TRUE);
INSERT INTO ExampleTable (IsActive)
VALUES (FALSE);

Các kiểu dữ liệu trong SQL server

Các kiểu dữ liệu trong SQL server
Tổng hợp các kiểu dữ liệu trong SQL server và ý nghĩa, cách sử dụng của chúng

Có nhiều kiểu dữ liệu SQL server khác nhau được sử dụng để đặt ra các quy tắc và giới hạn cho cột trong bảng. Dưới đây là một số kiểu dữ liệu trong SQL phổ biến:

  • INT: Kiểu dữ liệu này được sử dụng để lưu trữ số nguyên.
  • VARCHAR(n): Lưu trữ chuỗi ký tự có độ dài tối đa là n.
  • CHAR(n): Tương tự như VARCHAR, nhưng luôn có độ dài cố định là n, với các ký tự được lấp đầy đến cuối bằng khoảng trắng nếu cần.
  • DECIMAL(p, s) hoặc NUMERIC(p, s): Kiểu dữ liệu số dấu thập phân, với p là tổng số chữ số và s là số chữ số sau dấu thập phân.
  • DATE: Lưu trữ ngày (năm, tháng, ngày).
  • TIME: Lưu trữ thời gian trong một ngày.
  • BOOLEAN: Biểu diễn giá trị logic TRUE hoặc FALSE.
  • BLOB: Lưu trữ dữ liệu nhị phân, thường được sử dụng để lưu trữ hình ảnh, âm thanh, video, và các loại dữ liệu nhị phân khác.

Kết lại

Trên đây là toàn bộ chia sẻ của Comdy – Nơi chia sẻ kiến thức, kinh nghiệm từ các chuyên gia hàng đầu về technical & marketing. Hi vọng những thông tin, chia sẻ trong bài viết này sẽ giúp bạn hiểu sâu hơn về kiểu dữ liệu bit trong sql server. Xin cám ơn vì đã dành thời gian theo dõi, ủng hộ bài viết.

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 *