• MySQL进阶14--标识列(自增序列/auto_increment)--设置/展示步长--设置/删除标示列


    /*进阶14
      标识列  又称为自增序列;
      含义 : 可以不用手动的插入值, 系统提供默认的序列值(1-->n)
      特点 :  
        1.标识列必须和主键搭配? 不一定,但要求是一个key
        2.一个表可以有几个标示列?至多一个!
        3.标识列的类型, 只能是数值型;
        4.标识列可以通过 set auto_increment_increment = 3;设置步长
        5.可以通过 手动插入值,
    
    */
    
    #一: 创建表时设置  
        #标示列:AUTO_INCREMENT
    DROP TABLE IF EXISTS tab_identify;
    CREATE TABLE tab_identify(
        id INT PRIMARY KEY AUTO_INCREMENT,
        NAME VARCHAR(20)
    );
    TRUNCATE TABLE tab_identify;  #清空后,序列从0开始
    DELETE FROM tab_identify;     #清空后,序列从上次删除前开始 
    
    INSERT INTO tab_identify VALUES(NULL,'john');
    INSERT INTO tab_identify VALUES(NULL,'john'),(NULL,'naaa');
    SELECT * FROM tab_identify;
    
        #设置步长(往后的数据与数据间是按照这个步长)
    SET auto_increment_INCREMENT=3;
        
        #展示步长
    SHOW VARIABLES LIKE    '%auto_increment%';
        # auto_increment_increment : 3; auto_increment_offset(起始为1) :1 
        
    #二: 修改表的时候设置标识列
    ALTER TABLE tab_identify MODIFY COLUMN id INT AUTO_INCREMENT;    
        
    DROP TABLE IF EXISTS tab_identify;
    CREATE TABLE tab_identify(
        id INT PRIMARY KEY ,
        NAME VARCHAR(20)
    );
    
    #三: 修改表时删除标识列
    ALTER TABLE tab_identify MODIFY colomn id INT ;
    
    #
    
    
    
    
    
        
        
  • 相关阅读:
    VI命令----用于检索
    NIO框架Mina学习
    Android闹钟开发与展示Demo
    Golang mysql使用举例---连接本地数据库
    mysql通信协议
    大小端定义
    npm是什么
    菜鸟如何学习vue
    cgred不能自动将pid放入tasks
    centos7上为什么不使用libcgroup进行资源限制
  • 原文地址:https://www.cnblogs.com/zhazhaacmer/p/9872390.html
Copyright © 2020-2023  润新知