MySQL中的DDL(Data Definition Language,数据定义语言)(2)


#为t_test表增加add_name、add_address字段,类型都为varchar
alter table t_test add
(
    add_name varchar(255) default 'this is name',
    add_address varchar(255)
);

复制代码

注意:SQL语句中的字符串不是用双引号,而是用单引号;增加字段时,如果数据表中已有数据记录,除非给新增的列指定了默认值,
            否则新增的数据列不可指定为非空约束,因为那些已有的记录在新增列上肯定是空。    (只要新增的约束与已有的数据冲突,修改数据表结构就会失败)。

修改列定义:

alter table tableName modify columnName dataType [default expr] [first | after columnName];

上面语法中的first或者after columnName表示将目标列修改到指定的位置。

#例句:

#将t_test表中的add_id列的类型修改成varchar(255)类型
alter table t_test modify add_id varchar(255);

#将t_test表中的add_name列修改成int类型
alter table t_test modify add_name int;

删除列定义:

alter table tableName drop columnName;

删除列,只需要在drop关键字后跟上要删除的列名即可。

#删除t_test表中的add_name列
alter table t_test drop add_name;

重命名数据表名:

alter table tableName rename to newTableName;

#例句:
#将t_test数据表重命名为t_demo
alter table t_test rename to t_demo;

重命名数据表中的列名:

alter table tableName change
    old_column_name new_column_name dataType [default expr] [first | after column_name];

3.drop(删除表):

#语法:
drop table tableName;

#例句:
#删除t_demo数据表
drop table t_demo;

注意:删除数据表后,表结构被删除,表对象不再存在;表里的所有数据也被删除;该表所有相关的索引、约束也被删除。

4.truncate(截断表)
删除表里的全部数据,但保留表结构。truncate只能一次性删除整个表的全部记录。

#语法:
truncate tableName;

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/26f28d706a6901cf2fe38236c4cf774a.html