Nhận dạng bàn làm việc Mysql
Tùy chọn AUTO_INCREMENT cho phép bạn tự động tạo các số nguyên duy nhất (ID, danh tính, trình tự) cho một cột Show Ví dụ nhanh -- Define a table with an auto-increment column (id starts at 100) CREATE TABLE airlines ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(90) ) AUTO_INCREMENT = 100; -- Insert a row, ID will be automatically generated INSERT INTO airlines (name) VALUES ('United Airlines'); -- Get generated ID SELECT LAST_INSERT_ID(); -- Returns: 100 Tổng quan Giá trị bắt đầuthen new IDs with start from this value + 1Restart (Reset)ALTER TABLE table_name AUTO_INCREMENT = new_start_value; Để tạo một giá trị ID, bạn có thể bỏ qua cột tăng tự động trong câu lệnh INSERT hoặc chỉ định rõ ràng giá trị NULL hoặc 0 -- Omit auto-increment column INSERT INTO airlines (name) VALUES ('Delta'); -- Specify NULL or 0 INSERT INTO airlines VALUES (NULL, 'Southwest'); INSERT INTO airlines VALUES (0, 'American Airlines'); Bạn có thể chèn một giá trị ID một cách rõ ràng, sau đó MySQL sẽ tạo ID mới bắt đầu từ nó thêm 1 INSERT INTO airlines VALUES (200, 'Lufthansa'); INSERT INTO airlines (name) VALUES ('British Airways'); -- id 201 is assigned Bạn vẫn có thể chèn vào bên trong khoảng trống bằng ID nhỏ hơn ID tối đa hiện tại, nhưng điều này không ảnh hưởng đến ID sẽ được sử dụng cho các hàng khác INSERT INTO airlines VALUES (150, 'Air France'); -- id 150 inserted INSERT INTO airlines (name) VALUES ('KLM'); -- id 202 is assigned Bảng nội dung idname100United Airlines101Delta102Southwest103American Airlines150Air France200Lufthansa201British Airways202KLMHàm LAST_INSERT_ID trả về ID của hàng được chèn thành công đầu tiên. Ví dụ: trong INSERT nhiều hàng INSERT IGNORE INTO airlines VALUES (150, 'North Air'), -- this row will be skipped as ID 150 already exists, and IGNORE option used (0, 'Emirates'), -- id 203 is assigned (0, 'Qantas'); -- id 204 SELECT LAST_INSERT_ID(); -- Returns: 203 Bạn không thể đặt lại bộ đếm tăng tự động về giá trị bắt đầu nhỏ hơn hoặc bằng ID tối đa hiện tại ALTER TABLE airlines AUTO_INCREMENT = 1; INSERT INTO airlines (name) VALUES ('US Airways'); -- id 205 is assigned Sau khi bạn đã xóa tất cả các hàng, bộ đếm không tự động được đặt lại về giá trị bắt đầu DELETE FROM airlines; INSERT INTO airlines (name) VALUES ('United'); -- id 206 is assigned Bạn có thể khởi động lại tự động tăng lên 1 nếu không có hàng nào trong bảng DELETE FROM airlines; ALTER TABLE airlines AUTO_INCREMENT = 1; INSERT INTO airlines (name) VALUES ('United'); -- id 1 is assigned Cột tự động tăng trong cơ sở dữ liệu khác tiên tri Tự động tăng hoặc nhận dạngMáy chủ SQL IDENTITY(bắt đầu, gia số)PostgreSQL SERIAL Data TypeStart ValueChuyển đổi MySQL AUTO_INCREMENT tiên tri Oracle không hỗ trợ thuộc tính AUTO_INCREMENT (IDENTITY) trên một cột, nhưng chức năng này có thể được triển khai bằng trình tự và trình kích hoạt ________số 8Lưu ý rằng cần có trình kích hoạt vì Oracle không cho phép sử dụng mệnh đề NEXTVAL trong DEFAULT cho một cột Máy chủ SQL SQL Server hỗ trợ thuộc tính IDENTITY và cho phép bạn chỉ định số gia tăng CREATE TABLE airlines ( id INT IDENTITY(100, 1) PRIMARY KEY, name VARCHAR(90) ); PostgreSQL PostgreSQL hỗ trợ kiểu dữ liệu SERIAL cho phép bạn tự động tạo ID. Mặc dù SERIAL không cung cấp các tùy chọn để đặt giá trị ban đầu và giá trị gia tăng, nhưng bạn có thể sửa đổi đối tượng trình tự bên dưới Làm cách nào để sử dụng danh tính trong MySQL?Tương đương với cột IDENTITY của Microsoft SQL Server trong MySQL là AUTO_INCREMENT. IDENTITY trong SQL Server hoạt động như AUTO_INCREMENT trong MySQL. Nếu bạn không chuyển bất kỳ giá trị nào cho cột ProductId, MySQL sẽ bắt đầu auto_increment từ 1 và số tiếp theo tăng thêm 1 theo mặc định
Mã định danh trong bàn làm việc của MySQL là gì?Một số đối tượng trong MySQL, bao gồm cơ sở dữ liệu, bảng, chỉ mục, cột, bí danh, dạng xem, thủ tục lưu sẵn, phân vùng, vùng bảng, nhóm tài nguyên và các tên đối tượng khác được gọi là định danh.
Làm cách nào để tự động tạo id trong MySQL?MySQL có từ khóa AUTO_INCREMENT để thực hiện tự động tăng. Giá trị bắt đầu cho AUTO_INCREMENT là 1, là giá trị mặc định. Nó sẽ tăng thêm 1 cho mỗi bản ghi mới. Để lấy id tăng tự động tiếp theo trong MySQL, chúng ta có thể sử dụng hàm last_insert_id() từ MySQL hoặc auto_increment với SELECT .
Làm cách nào để thêm id tăng tự động trong MySQL?Để thêm cột số nguyên AUTO_INCREMENT mới có tên c. ALTER TABLE t2 ADD c INT UNSIGNED NOT NULL AUTO_INCREMENT, ADD PRIMARY KEY (c) ; . |