Tăng tự động mysql

Hướng dẫn MySQL this giải thích cách tạo các chuỗi bằng cách sử dụng thuộc tính Auto_increment trong MySQL với cú pháp và ví dụ. tạo chuỗi bằng thuộc tính AUTO_INCREMENT trong MySQL với cú pháp và ví dụ

Show

Mô tả sự kiện

In MySQL, you could create an a column contains string number (1, 2, 3, v. v. ) bằng cách sử dụng thuộc tính Auto_increment. Thuộc tính Auto_increment được sử dụng khi bạn cần tạo một số duy nhất để hoạt động như một từ khóa chính trong bảng

cú pháp

Cú pháp để tạo một chuỗi (hoặc sử dụng thuộc tính auto_increment) trong MySQL là

CREATE TABLE table_name
( 
  column1 datatype NOT NULL AUTO_INCREMENT,
  column2 datatype [ NULL | NOT NULL ],
  ...
);
Auto_incrementthe Thuộc tính được sử dụng khi bạn muốn MySQL tự động gán một chuỗi số cho một trường (về bản chất, số tự động tạo trường). cột null hoặc không NULLEACH nên được định nghĩa là null hoặc không null. Nếu tham số này bị bỏ qua, cơ sở dữ liệu giả định NULL là mặc định

Ghi chú

  • Bạn có thể sử dụng chức năng Last_insert_id để tìm giá trị cuối cùng được chỉ định bởi trường auto_increment

Thí dụ

Chúng ta hãy xem một ví dụ về cách sử dụng trình tự hoặc thuộc tính auto_increment trong MySQL

Ví dụ

CREATE TABLE contacts
( contact_id INT(11) NOT NULL AUTO_INCREMENT,
  last_name VARCHAR(30) NOT NULL,
  first_name VARCHAR(25),
  birthday DATE,
  CONSTRAINT contacts_pk PRIMARY KEY (contact_id)
);

Ví dụ MySQL Auto_increment này tạo một bảng có tên Danh bạ có 4 cột và một từ khóa chính

  • Cột đầu tiên được gọi là Contact_id được tạo dưới dạng dữ liệu INT (chiều dài tối đa tối đa 11 chữ số) và không thể chứa các giá trị null. Nó được đặt làm trường tự động_increment có nghĩa là nó là trường đánh số tự động (bắt đầu từ 1 và tăng thêm 1, trừ khi có quy định khác. )
  • Cột thứ hai được gọi là last_name là kiểu dữ liệu varchar ( chiều dài tối đa tối đa 30 ký tự) và không thể chứa các giá trị null
  • Cột thứ ba được gọi là First_name là kiểu dữ liệu varchar ( chiều dài tối đa tối đa 25 ký tự) và có thể chứa các giá trị null

    AUto gia tăng là 1 tính năng rất phổ biến trong sql nó được sử dụng hầu hết cho tất cả các bạn để tăng ID 1 cách tự động dễ dàng trong việc chèn cũng như xóa dữ liệu.
    Khi bạn tạo bảng trong phpmyadmin bạn có thể tạo bằng truy vấn thì việc thêm Auto_increment khá dễ dàng ví dụ như sau.

    TẠO BẢNG Người dùng(
    ID int NOT NULL AUTO_INCREMENT,
    Tên người dùng varchar(255) NOT NULL,
    Email varchar(255),
    );

    Click to expand


    Tuy nhiên, khi bạn tạo bảng bằng tính năng có sẵn trong phpadmin thì không thể để tính năng auto_increment ở đâu vì nó viết tắt. Khi bạn tạo bảng, hãy kiểm tra phần A_I như hình bên dưới để bật tính năng này lên

    Tăng tự động mysql


    Còn trong trường hợp bạn đã tạo rồi thì có chỉnh sửa bằng cách chạy lệnh hoặc chỉnh sửa tương tự. Bằng cách vào bảng đó, sau đó nhấp vào Cấu trúc và chọn Thay đổi

    Tăng tự động mysql


    And same as section at create, đánh dấu vào mục A_I để chọn tăng tự động cho cột đó

    Tăng tự động mysql


    Ngoài ra các bạn cũng có thể thiết lập giá trị auto_increment bằng cách chọn vào Operatioons -> Điền số vào phần AUTO_INCREMENT sao cho hợp lý hoặc reset lại tù đầu bằng cách điền số 1 vào.

     

    Tăng tự động hay AUTO INCREMENT là một trường (Field) cho phép một số duy nhất được tạo tự động khi một bản ghi mới được thêm vào bảng. Chúng ta hay sử dụng trường tự động tăng cho cột có từ khóa chính vì đơn giản chúng ta muốn tạo tự động mỗi khi một bản ghi mới được thêm vào

    Cú pháp thêm trường tự động tăng trong câu lệnh tạo bảng

    CREATE TABLE table_name (
        column1 datatype IDENTITY(1,1) PRIMARY KEY,
        column2 datatype,
        column3 datatype,
        ....
    );

    in which

    • CREATE TABLE là câu lệnh hoặc từ khóa cần có để tạo bảng
    • table_name là tên của bảng cần tạo
    • PRIMARY KEY là khóa chính
    • cột1, cột2, cột3… là tên các cột thuộc tính trong bảng
    • datatype là kiểu dữ liệu của từng cột
    • IDENTITY(1,1) là từ khóa cho việc tăng tự động và giá trị này bắt đầu từ số 1 sau đó mỗi lần tăng thêm 1 đơn vị cho mỗi bản ghi mới được thêm vào bảng

    Chú thích. Cú pháp trong câu lệnh trên thì trường tự động tăng sẽ được đặt vào cột có từ khóa chính trong bảng. Ta hoàn toàn thay đổi IDENTITY(1,1) thành các giá trị số ta cần tự động tăng lên sau khi có bản ghi được thêm vào bảng. Ví dụ như IDENTITY(1,10) nghĩa là bắt đầu từ số 1 và mỗi lần có bản ghi vào bảng sẽ tự động tăng thêm 10 đơn vị

    Sau khi có trường tự động tăng cho cột làm khóa chính, việc nhập 1 bản ghi mới vào bảng và hoàn toàn có thể bỏ trống trường tự động tăng cũng là khóa chính của bảng

    2. Ví dụ AUTO TĂNG

    Ví dụ dưới đây, tôi sẽ tạo bảng ConNguoi bao gồm các cột là. ID, Ho, Ten, DiaChi, ThanhPho và thêm trường tự động tăng vào cột ID chính khóa trong bảng. Tôi sẽ đánh giá trị từ 1 và mỗi lần có bản ghi mới vào bảng ConNguoi sẽ tự động tăng thêm một đơn vị cho cột chính

    CREATE TABLE ConNguoi (
        ID int IDENTITY(1,1) PRIMARY KEY,
        Ho varchar(25) NOT NULL,
        Ten varchar(25) NOT NULL,
        DiaChi nvarchar(255),
        ThanhPho nvarchar(255)
    );

    Sau khi trường tự động tăng được thêm vào cột ID khóa chính trong bảng. Ta hoàn toàn có thể thêm dữ liệu mới vào trong bảng và bỏ qua ID trường

    INSERT INTO ConNguoi (Ho,Ten,DiaChi,ThanhPho)
    VALUES ('Chu','Minh Nam','Ba Vi','Ha Noi');

    Sau khi câu lệnh INSERT ở trên được thực thi, trường ID sẽ tự động có giá trị là 1, sau những lần thêm bản ghi mới vào bảng ConNguoi bằng câu lệnh INSERT thì cột ID sẽ tự động tăng lên 1 đơn vị do ta