zoukankan      html  css  js  c++  java
  • mysql修改表结构语句

    mysql 修改表结构,字段等信息

     

    一、查看表信息

    1:查看建表语句
    show create table test_a;
    2:查看表字段信息
    DESC test_a;

    二、建表语句

    CREATE TABLE `test_a` (
    `id` char(32) NOT NULL COMMENT '主键ID',
    `work_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '自增列',
    `creator_id` char(32) DEFAULT NULL COMMENT '创建人',
    `create_time` datetime DEFAULT NULL COMMENT '创建时间',
    `modifier_id` char(32) DEFAULT NULL COMMENT '修改人',
    `modify_time` datetime DEFAULT NULL COMMENT '修改时间',
    `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '状态:1 启动 0 停用',
    `deleted` tinyint(1) NOT NULL DEFAULT '0' COMMENT '删除标记:0、未删除 1、已删除',
    `handle_mission` tinyint(1) unsigned zerofill DEFAULT NULL COMMENT '手动完成,0,正常上刊任务;1,手动完成任务',
    `signed_customer` varchar(64) DEFAULT NULL COMMENT '签约客户',
    # 主键索引
    PRIMARY KEY (`id`) USING BTREE,
    # 唯一索引
    UNIQUE KEY `index_id` (`id`) USING BTREE,
    # 索引
    KEY `index_signed_customer` (`signed_customer`) USING BTREE,
    ) ENGINE=InnoDB AUTO_INCREMENT=100 DEFAULT CHARSET=utf8mb4

    unsigned:无符号。常用于一些数据不能为负数的场合。增大数据类型的可用范围,我们在查看数值类型的可用范围时,通常都会有一个无符号范围,这个无符号范围就是在数值类型中添加了unsigned。假如:一个数值类型的可用范围为-10~10,那么他的无符号范围就是0~20,你可以理解为数值类型加上unsigned,可以使数值类型的正数范围翻倍。
     zerofill:   作用是填充0。在字段中数据类型规定的范围中,若是插入的数据不满足范围,则会使用空格作为填充,使其符合要求,而zerofill则会将空格改为0。
     ENGINE=InnoDB   使用 InnoDB 引擎
     AUTO_INCREMENT=100   从100开始自动递增
     DEFAULT CHARSET=utf8mb4    默认的编码格式 utf8mb4
     USING BTREE:  索引方法使用BTREE.
     索引方法包含BTREE、HASH
    1.HASH(用于对等比较,如"="和" <=>") //<=> 安全的比对 ,用与对null值比较,语义类似is null()
    2.BTREE(用于非对等比较,比如范围查询)>,>=,<,<=、BETWEEN、Like

    三、 修改表信息

    1.修改表名 
    alter table test_a rename to test_b;
    
    2.修改表注释 
    alter table test_a comment 'test_a字段注释';

    四、修改表字段信息

    1.修改字段类型
    alter table test_a modify column user_name text;
    
    2.修改字段类型和注释
    alter table test_a modify column user_name varchar(20) COMMENT '用户名字';
    
    3.设置字段允许为空
    alter table test_a modify column user_name varchar(255) default null COMMENT '用户名字';
    
    4.修改为自增主键
    alter table test_a modify column a_id int(5) auto_increment ;
    
    5.修改字段名字(要重新指定该字段的类型)
    alter table test_a change user_name user_name2 varchar(255) not null comment '其他的备注信息';

    五、给表增加字段

    1.增加一个字段,设好数据类型,且不为空,添加注释
    alter table test_a add user_name varchar(255) not null comment '用户名字';
    
    2.给字段增加主键
    alter table test_a add primary key (a_id);
    
    3.增加一个字段(a_id)并设置为主键 
    alter table test_a add a_id int(5) not null , add primary key (a_id);
    
    4.增加字段并设置为自增主键
    alter table test_a add a_id int(5) not null auto_increment , add primary key (a_id);

    六、删除表字段

    1.删除字段
    alter table test_a drop user_name;

    七、其他

    1.在某个字段(a_id)后增加字段
    alter table test_a add column user_age int(4) not null default 0 AFTER a_id;
    
    2.调整字段顺序 #(注意gateway_id出现了2次)
    alter table test_a change user_age user_age int not null AFTER a_id ;

     

  • 相关阅读:
    (转帖) oracle是否归档模式及修改模式
    (转帖) Oracle实例恢复(Oracle instance recovery)
    实习第一周总结
    UML类图几种关系的总结
    表格排序
    利用js查找页面中的内链,外链
    事件机制(事件冒泡与事件捕获)
    谈 CSS 模块化
    初学后台框架总结篇二——快速了解CI框架
    初学后台框架总结篇一——学习过程
  • 原文地址:https://www.cnblogs.com/dw3306/p/9650220.html
Copyright © 2011-2022 走看看