MySQL - INT: Hướng dẫn cho người mới bắt đầu

Xin chào, những người đam mê cơ sở dữ liệu! Hôm nay, chúng ta sẽ cùng nhau lặn vào thế giới của MySQL và khám phá một trong những loại dữ liệu cơ bản nhất: INT. Đừng lo nếu bạn là người mới bắt đầu lập trình - tôi sẽ dẫn dắt bạn từng bước trong hành trình này, giống như tôi đã làm cho hàng trăm sinh viên trong những năm dạy học của mình. Vậy, hãy c rolled up our sleeves và bắt đầu nào!

MySQL - INT

Kiểu dữ liệu INT trong MySQL

Kiểu dữ liệu INT trong MySQL giống như một con ngựa mạnh mẽ và đáng tin cậy trong gia đình các loại dữ liệu số. Nó được sử dụng để lưu trữ các số nguyên (integers) không có dấu phẩy thập phân. Hãy tưởng tượng nó như một hộp có thể chứa các số từ -2.147.483.648 đến 2.147.483.647. Đó là rất nhiều số!

Hãy tạo một bảng đơn giản để xem INT trong hành động:

CREATE TABLE my_first_table (
id INT,
age INT,
score INT
);

Trong ví dụ này, chúng ta đã tạo một bảng叫做 my_first_table với ba cột: id, age, và score. Tất cả các cột này đều sử dụng kiểu dữ liệu INT.

Bây giờ, hãy thêm một ít dữ liệu:

INSERT INTO my_first_table (id, age, score) VALUES (1, 25, 95);
INSERT INTO my_first_table (id, age, score) VALUES (2, 30, 88);
INSERT INTO my_first_table (id, age, score) VALUES (3, 22, 100);

Ở đây, chúng ta đang thêm ba hàng dữ liệu vào bảng của mình. Mỗi lệnh INSERT thêm một người mới với id, age, và score của họ.

Tự động tăng với MySQL INT

Một trong những tính năng tuyệt vời của INT là nó có thể tự động tăng. Điều này rất hữu ích khi bạn muốn tạo ra các标识符 duy nhất cho mỗi hàng trong bảng của mình. Hãy để tôi cho bạn thấy cách nó hoạt động:

CREATE TABLE auto_increment_example (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50)
);

INSERT INTO auto_increment_example (name) VALUES ('Alice');
INSERT INTO auto_increment_example (name) VALUES ('Bob');
INSERT INTO auto_increment_example (name) VALUES ('Charlie');

Trong ví dụ này, cột id sẽ tự động gán 1, 2, và 3 cho Alice, Bob, và Charlie tương ứng. Nó giống như có một trợ lý giúp bạn số hóa các mục nhập của bạn!

MySQL INT không dấu âm (UNSIGNED)

Đôi khi, bạn chỉ cần số dương. Đó là khi UNSIGNED rất hữu ích. Nó hiệu quả gấp đôi giá trị tối đa mà INT có thể giữ, từ 0 đến 4.294.967.295.

CREATE TABLE positive_numbers (
id INT UNSIGNED,
quantity INT UNSIGNED
);

INSERT INTO positive_numbers (id, quantity) VALUES (1, 100);
INSERT INTO positive_numbers (id, quantity) VALUES (2, 4294967295);

Bảng này chỉ chấp nhận số dương, điều này hoàn hảo cho các thứ như số lượng hoặc tuổi.

MySQL INT với thuộc tính عرض hiển thị (Display Width)

Thuộc tính عرض hiển thị không ảnh hưởng đến phạm vi giá trị mà INT có thể lưu trữ, nhưng nó có thể làm cho dữ liệu của bạn trông đẹp hơn khi hiển thị. Dưới đây là cách nó hoạt động:

CREATE TABLE display_width_example (
id INT(4),
code INT(6) ZEROFILL
);

INSERT INTO display_width_example (id, code) VALUES (1, 123);
INSERT INTO display_width_example (id, code) VALUES (1000, 456789);

Khi bạn truy xuất dữ liệu này, code sẽ được hiển thị là 000123 và 456789 tương ứng. Nó giống như thêm các số không dẫn đầu để làm cho tất cả các số của bạn có cùng độ rộng.

MySQL INT với thuộc tính ZEROFILL

ZEROFILL giống như người bạn tốt của عرض hiển thị. Nó tự động thêm các số không vào số của bạn để đạt được độ rộng đã chỉ định. Hãy xem nó hoạt động như thế nào:

CREATE TABLE zerofill_example (
id INT(5) ZEROFILL
);

INSERT INTO zerofill_example (id) VALUES (1);
INSERT INTO zerofill_example (id) VALUES (100);
INSERT INTO zerofill_example (id) VALUES (10000);

Khi bạn truy xuất dữ liệu này, bạn sẽ thấy 00001, 00100, và 10000. Nó rất hữu ích cho việc tạo mã hoặc ID có độ rộng nhất quán.

Kiểu dữ liệu INT sử dụng chương trình khách

Bây giờ, hãy áp dụng tất cả kiến thức này vào thực hành bằng cách sử dụng một chương trình khách. Tôi sẽ sử dụng trình khách dòng lệnh MySQL cho ví dụ này, nhưng nguyên tắc áp dụng cho bất kỳ trình khách MySQL nào.

-- Kết nối đến MySQL
mysql -u your_username -p

-- Tạo cơ sở dữ liệu
CREATE DATABASE int_examples;

-- Sử dụng cơ sở dữ liệu
USE int_examples;

-- Tạo bảng sử dụng các loại INT khác nhau
CREATE TABLE int_showcase (
id INT AUTO_INCREMENT PRIMARY KEY,
regular_int INT,
unsigned_int INT UNSIGNED,
display_width_int INT(4),
zerofill_int INT(6) ZEROFILL
);

-- Chèn một ít dữ liệu
INSERT INTO int_showcase (regular_int, unsigned_int, display_width_int, zerofill_int)
VALUES (-1000, 1000, 123, 123);

INSERT INTO int_showcase (regular_int, unsigned_int, display_width_int, zerofill_int)
VALUES (2000000, 3000000, 45678, 45678);

-- Truy xuất dữ liệu
SELECT * FROM int_showcase;

Khi bạn chạy đoạn mã này, bạn sẽ thấy cách mỗi loại INT hành xử khác nhau. Kiểu regular_int có thể giữ giá trị âm, kiểu unsigned_int chỉ giữ giá trị dương, kiểu display_width_int trông bình thường, và kiểu zerofill_int thêm các số không dẫn đầu.

Dưới đây là bảng tóm tắt các loại INT chúng ta đã xem xét:

Loại INT Phạm vi Ví dụ sử dụng
INT -2.147.483.648 đến 2.147.483.647 Lưu trữ số nguyên通用
INT UNSIGNED 0 đến 4.294.967.295 Chỉ số dương
INT AUTO_INCREMENT Cùng như INT, nhưng tự động tăng Khóa chính,标识符 duy nhất
INT(N) Cùng như INT, nhưng ảnh hưởng đến عرض hiển thị Định dạng đầu ra
INT(N) ZEROFILL Cùng như INT, thêm số không Tạo mã có độ rộng nhất quán

Và thế là xong, các bạn! Chúng ta đã cùng nhau hành trình qua thế giới của MySQL INT, từ cơ bản đến những mẹo hay. Nhớ rằng, như học bất kỳ kỹ năng mới nào, việc thành thạo MySQL đòi hỏi phải thực hành. Vậy đừng ngại thử nghiệm với các khái niệm này. Ai biết được? Bạn có thể trở thành chuyên gia INT trong nhóm lập trình của mình! Chúc các bạn thành công trong việc truy vấn!

Credits: Image by storyset