How to set initial value and auto increment in MySQL?

前端 未结 10 1869
Happy的楠姐
Happy的楠姐 2020-11-22 13:40

How do I set the initial value for an \"id\" column in a MySQL table that start from 1001?

I want to do an insert \"INSERT INTO users (name, email) VALUES (\'{

相关标签:
10条回答
  • 2020-11-22 14:17

    SET GLOBAL auto_increment_offset=1;

    SET GLOBAL auto_increment_increment=5;

    auto_increment_offset: interval between successive column values

    auto_increment_offset: determines the starting point for the AUTO_INCREMENT column value. The default value is 1.

    read more here

    0 讨论(0)
  • 2020-11-22 14:22

    MySQL - Setup an auto-incrementing primary key that starts at 1001:

    Step 1, create your table:

    create table penguins(
      my_id       int(16) auto_increment, 
      skipper     varchar(4000),
      PRIMARY KEY (my_id)
    )
    

    Step 2, set the start number for auto increment primary key:

    ALTER TABLE penguins AUTO_INCREMENT=1001;
    

    Step 3, insert some rows:

    insert into penguins (skipper) values("We need more power!");
    insert into penguins (skipper) values("Time to fire up");
    insert into penguins (skipper) values("kowalski's nuclear reactor.");
    

    Step 4, interpret the output:

    select * from penguins
    

    prints:

    '1001', 'We need more power!'
    '1002', 'Time to fire up'
    '1003', 'kowalski\'s nuclear reactor'
    
    0 讨论(0)
  • 2020-11-22 14:22

    You could also set it in the create table statement.

    `CREATE TABLE(...) AUTO_INCREMENT=1000`
    
    0 讨论(0)
  • 2020-11-22 14:26

    First you need to add column for auto increment

    alter table users add column id int(5) NOT NULL AUTO_INCREMENT FIRST
    

    This query for add column at first. Now you have to reset auto increment initial value. So use this query

    alter table users AUTO_INCREMENT=1001
    

    Now your table started with 1001

    0 讨论(0)
  • 2020-11-22 14:27

    Use this:

    ALTER TABLE users AUTO_INCREMENT=1001;
    

    or if you haven't already added an id column, also add it

    ALTER TABLE users ADD id INT UNSIGNED NOT NULL AUTO_INCREMENT,
        ADD INDEX (id);
    
    0 讨论(0)
  • 2020-11-22 14:28

    MySQL Workbench

    If you want to avoid writing sql, you can also do it in MySQL Workbench by right clicking on the table, choose "Alter Table ..." in the menu.

    When the table structure view opens, go to tab "Options" (on the lower bottom of the view), and set "Auto Increment" field to the value of the next autoincrement number.

    Don't forget to hit "Apply" when you are done with all changes.

    PhpMyAdmin:

    If you are using phpMyAdmin, you can click on the table in the lefthand navigation, go to the tab "Operations" and under Table Options change the AUTO_INCREMENT value and click OK.

    0 讨论(0)
提交回复
热议问题