zoukankan      html  css  js  c++  java
  • SQL-ALTER-change和modify区别

     
    ALTER 对于列的应用:
     
    1.更改列名
         格式:CHANGE old_col_name new_col_name column_definition
         保留old和new列名
             列名:a ---->b 列类型
       ALTER TABLE t1 CHANGE a b INTEGER;
     
    2.更改列类型,不改列名
            保留old和new的列名,即使一样。
         ALTER TABLE t1 CHANGE b b BIGINT NOT NULL;
     
    3.更改列类型,不改列名。
             不保留old列名。
         ALTER TABLE t1 MODIFY b BIGINT NOT NULL;
    注意:
        < 1>.使用CHANGE或者MODIFY时,列的定义必须包含:数据的类型和应用到列上的属性,但不包括:索引,例如:  PRIMARY KEY or UNIQUE
             例如:  列的定义:INT UNSIGNED DEFAULT 1 COMMENT 'my column' 
                更改 : 
        ALTER TABLE t1 MODIFY col1 BIGINT UNSIGNED DEFAULT 1 COMMENT 'my column';
         <2>.使用CHANGE或者MODIFY改变数据类型时,列的值也会尽可能转成对应的列类型。可能会丢失数据,最好,在使用ALTER table 之前设置;strict SQL mode
     
         <3>.增加指定位置的列,可以用FIRST,AFTER column_name,
     
         <4>.使用CHANGE,MODIFY缩短列的长度候,列长小于对应索引长度,索引会自动缩短。
     
     
    4.更改列的默认值:ALTER TABLE tb_name ALTER column_name。
     
              CREATE TABLE test2(id INT ,NAME VARCHAR(4)); 在不指定默认值的情况下,建表之后:默认null。
              更改默认值:ALTER TABLE test2 ALTER name SET DEFAULT ''; 
              注意:更改默认值 只对更改之后,新插入的数据有效。表中以前的数据,是NULL还是NULL,是空还是空。
     
     
  • 相关阅读:
    根据IP地址查找MAC地址
    MongoDB导入导出以及数据库备份
    本地mongodb数据库导出到远程数据库中
    datatable自动增加序号
    IDEA出现无法加载主类
    远程连接本地mongodb 数据库
    js将后台传入得时间格式化
    Java蓝桥杯--基础练习 (6)回文数
    Java蓝桥杯--基础练习(5)杨辉三角形
    Java蓝桥杯--基础练习(4)查找整数
  • 原文地址:https://www.cnblogs.com/cuisi/p/6638858.html
Copyright © 2011-2022 走看看