mysql数据表添加列,修改列,删除列的方法

作者: 杨圣亮 分类: mysql 发布时间: 2016-10-11 21:11:12

mysql是一个免费的数据库,在被oracle这个被业界称为开源头号杀手阅读:Oracle已超越微软成为头号开源杀手】将Mysql收归旗下的时候,开源人士纷纷担忧,考虑到Oracle有可能将Mysql闭源的可能,2009年,MySQL之父Michael “Monty” Widenius开发了Mysql的分支—MariaDB,用来替代已经有风险的Mysql了,Mysql数据库可无缝切换到MariaDB上。

而这一切,事隔甲骨文收购Mysql才不到一年,不得不说,祖师爷就是强悍,更难能可贵的是,能把开源和免费继续下去,在开源与免费的世界,一切闭源或软件自身收费都不被接受。

linux服务器版本开始跟进,cenots ,fedora等重要Linux分支,已经放弃mysql,转向 MariaDB。一说就扯远了,这些与本文没有关系,有时一说话,才发现自己是个话唠,呵呵!有兴趣的朋友可自行了解一下MariaDB的历史。言归正传,举个例子,有一个名为 tt 的数据库,有table_c表,一共有两列,分别是:id 和name,接下来,将在两列之间添加一列 age存储年龄信息, 结构如下:

一:添加列 添加 age列到id后

alter table table_c add age int(4) after id;

添加age列,成功

二:删除列

需求变了(客户经常这样干),name列不需要了,删除数据表table_c中的name

alter table table_c  drop name;


三:添加字段到指定位置


删除了name后,客户突然又打电话了,现在需求又变了,添加name,位置:age前

alter table table_c add name varchar(20) after id;

总算是把表建好了,慢,客户又来电了,这次是希望将 name拆分成姓与名字的方式[firstname, lastname]

四:字段列的重命名

步骤:将 name 列重命名为 firstname,并添加 lastname 列就可以达到需求了

//将name 重命名为 firstname
alter table table_c change name firstname varchar(20);

// firstname后添加lastname
alter table table_c add lastname varchar(10) after firstname;

五:修改列的属性

// 将 age的类型由 int改为 varchar
alter table table_c modify age varchar(10);
//再改回来
alter table table_c modify age int(3);

基本上对列的操作都演示了一遍。

4 条评论
  • Pingback: 3separable
  • Brandonder

    2018年5月10日 上午5:34

    Hi there! order lasix good site

  • AnnaMJ

    2016年12月18日 下午3:31

    Hello! My name is AnnaMarkova, our company need to advertise on your website. What is your prices? Thank you. Best regards, Mary.

    1. 杨圣亮

      2016年12月19日 上午7:45

      hello, Your website cannot visit, cannot open.If you really have intention, you can contact mail

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

  +  16  =  20

微信