Đáng lẽ ra bài này tôi trình bày ở bài tạo từ khóa chính Khóa chính nhưng thiết nghĩ để các bạn dễ tìm kiếm thì tôi sẽ chia nhỏ nó ra làm một bài riêng để trình bày cho chi tiết hơn. AUTO_INCREMENT
là một chức năng khá quan trọng trong việc phân tích và cơ sở dữ liệu tối ưu, chi tiết thì bạn đọc ở phần dưới đây
Nội dung chính Hiển thị
- 1. AUTO_INCREMENT là gì?
- 2. Tạo AUTO_INCREMENT
- 3. Thay đổi giá trị AUTO_INCREMENT
- 4. Lời kết
- Tăng tự động là gì?
- Khi sử dụng tự động tăng?
- Cú pháp tăng tự động
- Bây giờ chúng ta hãy chèn một danh mục mới vào bảng danh mục
Bài viết này đã được đăng tại freetuts. mạng, không được sao chép dưới mọi hình thức. freetuts. net , không được sao chép dưới mọi hình thức.
1. AUTO_INCREMENT là gì?
AUTO_INCREMENT
nói nôm na có nghĩa là tăng tự động, có nghĩa là nếu bạn thiết lập một trường nào đó là tăng tự động thì khi bạn thêm bản ghi mới, bạn không cần phải truyền dữ liệu cho nó và nó sẽ tự lấy giá trị gia tăng lớn nhất . Tuy nhiên không phải lúc nào nó cũng lấy giá trị lớn nhất mà sẽ tuân theo những tính chất sau đây
AUTO_INCREMENT
only setting is for INT type and each table only have a field duy nhất, nghĩa là nếu bạn thiết lập 2 trường làAUTO_INCREMENT
thì sẽ bị lỗi ngay- Khi bạn thêm dữ liệu nếu bạn có truyền dữ liệu thì nó sẽ lấy dữ liệu đó thay vì tăng tự động, ngược lại nó sẽ lấy giá trị lớn nhất hiện tại và tăng lên 1[giá trị lớn nhất này được lưu trong cấu hình của bảng chứ không phải
- Khi bạn xóa một bản ghi thì sẽ trống mất một giá trị, lúc này nếu bạn thêm vào thì nó sẽ không lấp đầy vào vị trí này mà nó tuân theo quy định của luật trên
- Giả sử giá trị 120 là lớn nhất, bạn xóa đi 120 thì lúc này giá trị lớn nhất là 119. Lúc này nếu cấm thêm mới thì nó sẽ lấy 121 chứ không phải là 120 vì giá trị lớn nhất nó được lưu trong cấu hình của bảng
- Thông thường ta sử dụng
AUTO_INCREMENT
cho Khóa chính khi viết ứng dụng trang web - Default
AUTO_INCREMENT
will have the first value is 1
Đấy là những điểm đặc biệt của AUTO_INCREMENT
. Bây giờ ta sẽ tìm hiểu các thiết lập của nó nhé
2. Tạo AUTO_INCREMENT
Để tạo AUTO_INCREMENT
, ta thêm từ khóa AUTO_INCREMENT
phía sau trường muốn tạo trong lệnh tạo bảng [Tạo bảng]. Thông thường chúng ta sử dụng từ khóa chính nên trong các ví dụ dưới đây tôi sử dụng cho lĩnh vực này
ALTER TABLE Users AUTO_INCREMENT = 10005. a thêm từ khóa
AUTO_INCREMENT
phía sau trường muốn tạo trong lệnh tạo bảng [Tạo bảng]. Thông thường chúng ta sử dụng từ khóa chính nên trong ví dụ dưới đây tôi sử dụng cho lĩnh vực này ALTER TABLE Users AUTO_INCREMENT = 10005 .
Bài viết này đã được đăng tại [free tuts. mạng lưới]
CREATE TABLE Users[ id INT[11] NOT NULL PRIMARY KEY AUTO_INCREMENT, username VARCHAR[50] NOT NULL UNIQUE, email VARCHAR [50] NOT NULL UNIQUE ]
3. Thay đổi giá trị AUTO_INCREMENT
Như bạn biết mặc định AUTO_INCREMENT
sẽ có giá trị đầu tiên là 1. Nhưng đôi khi bạn muốn giá trị đầu tiên của nó là một con số khác thì bạn sẽ sử dụng lên
ALTER TABLE Users AUTO_INCREMENT = 10007 to change.
ALTER TABLE Users AUTO_INCREMENT = 1000
Sau khi chạy lệnh này, khi bạn thêm dữ liệu, nó sẽ lấy 1000 thay vì 1 như cấu hình mặc định ban đầu. 1000 instead because 1 as cấu hình mặc định ban đầu
Lưu ý. Nếu số bạn chọn nhỏ hơn số tối đa của ô tô thì sẽ không có tác dụng. Ví dụ trường ID hiện tại tối đa là 1000 nhưng bạn thay đổi thông số tự động thành 400 thì sẽ không có tác dụng. Nếu số bạn chọn nhỏ hơn số tối đa của ô tô thì sẽ không có tác dụng. Ví dụ trường ID hiện tại tối đa là 1000 nhưng bạn thay đổi thông số tự động thành 400 thì sẽ không có tác dụng
4. Lời kết
Khi phân tích dữ liệu, bạn nên chọn khóa chính là tự động tăng, thứ nhất là nó truy vấn nhanh và thứ hai là khi thêm dữ liệu, bạn không cần phải truyền giá trị cho từ khóa chính vì nó đã tăng tự động. Bài này kết thúc tại đây, bài tiếp theo mình sẽ nói về khóa ngoại [khóa ngoại]
Khóa học Excel online - Tuyệt đỉnh Excel - Trở thành bậc thầy Excel trong 16 giờ
Tăng tự động là gì?
Tăng tự động là một chức năng hoạt động trên các loại dữ liệu. Nó tự động tạo các giá trị liên tiếp mỗi khi dữ liệu được thêm vào bảng cho trường được xác định là tăng tự động
Khi sử dụng tự động tăng?
Trong quá trình chuẩn hóa cơ sở dữ liệu, chúng tôi đã xem xét cách dữ liệu có thể được lưu trữ với mức tối thiểu, bằng cách lưu trữ dữ liệu vào nhiều bảng nhỏ, liên quan với nhau bằng từ khóa chính và từ khóa bên ngoài
Khóa chính phải là duy nhất vì nó xác định duy nhất trong cơ sở dữ liệu. Nhưng, làm thế nào chúng ta có thể chắc chắn rằng từ khóa chính luôn luôn là duy nhất? . Điều này có thể hoạt động tốt nhưng cách làm rất phức tạp. Để tránh sự phức tạp như vậy và để đảm bảo rằng từ khóa chính luôn duy nhất, chúng ta có thể sử dụng tính năng tăng tự động của MySQL để tạo từ khóa chính. Tăng tự động được sử dụng với kiểu dữ liệu INT. INT kiểu dữ liệu hỗ trợ cả giá trị có dấu và không dấu. Các kiểu dữ liệu không dấu chỉ có thể chứa các số dương. Tốt nhất, nên xác định dữ liệu không có dấu trên khóa tự động tăng chính
Cú pháp tăng tự động
Bây giờ, chúng ta hãy xem ví dụ sau
CREATE TABLE `categories` [ `category_id` int [11] AUTO_INCREMENT, `category_name` varchar [150] DEFAULT NULL, `remarks` varchar[500] DEFAULT NULL, PRIMARY KEY [`category_id`] ];
Lưu ý “AUTO_INCREMENT” trên trường category_id. Điều này làm cho danh mục id được tạo tự động mỗi khi một hàng mới được thêm vào bảng dữ liệu.
Theo mặc định, giá trị bắt đầu cho AUTO_INCREMENT là 1 và giá trị này sẽ tăng thêm 1 cho mỗi lần thêm mới