MySQL中如何在原有的表中增加一列

目录
  • MySQL在原有的表中增加一列
  • MySQL table中增加列的SQL语句
    • 1、增加列
    • 2、示例
  • 总结

MySQL在原有的表中增加一列

表已经建好了,但我们需要再增加一列,使用代码:

注意:如果不加after,那新加的列就在表的最后一列,after是让新加的列在哪一列的后面。

alter table emp_bonus add column ename varchar(20) not null
after empno;

结果如图:

MySQL table中增加列的SQL语句

下面是 Mysql 的增加列的 SQL语法。

1、增加列

1.1、增加一列:

在一个已经建好的表中增加一列:

alter table TABLE_NAME add column NEW_COLUMN_NAME varchar(20) not null ;

1.2、指定插入位置:

默认情况下,插入的列是在表的最后面, 如果想指定插入列的位置,如下:

alter table TABLE_NAME add column NEW_COLUMN_NAME varchar(20) not null after COLUMN_NAME ;

1.3、插入到第1列:

上面是插入到某列的后面,如果想插入到第1列,如下:

alter table TABLE_NAME add column NEW_COLUMN_NAME varchar(20) not null first ;

2、示例

已知表 tb_user 表结构,如下:

CREATE TABLE `tb_user` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `platform_id` varchar(50) DEFAULT NULL COMMENT '平台ID',
  `code` varchar(10) DEFAULT NULL COMMENT '响应标识.00表示成功',
  `swift_number` varchar(50) DEFAULT NULL COMMENT '流水号',   
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

要在表中都插入几个字段,比如 创建时间、更新时间、备注 。

创建时间、更新时间、备注 的 类型、长度 和 备注 等信息如下:

`create_time` datetime DEFAULT NULL COMMENT '创建时间' 
`update_time` datetime DEFAULT NULL COMMENT '更新时间'
`remark` varchar(100) DEFAULT NULL COMMENT '备注'

插入字段操作如下:

复制 上面 创建时间、更新时间、备注 的 三行,并在前面添加 SQL语句 alter table tb_user add column 。完整 SQL语句如下:

alter table tb_user  add column   `create_time` datetime DEFAULT NULL COMMENT '创建时间' ;
alter table tb_user  add column   `update_time` datetime DEFAULT NULL COMMENT '更新时间' ;
alter table tb_user  add column   `remark` varchar(100) DEFAULT NULL COMMENT '备注' ;

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • MySQL 大表添加一列的实现

    问题参考自: https://www.zhihu.com/question/440231149 ,mysql中,一张表里有3亿数据,未分表,要求是在这个大表里添加一列数据.数据库不能停,并且还有增删改操作.请问如何操作?答案为个人原创 以前老版本 MySQL 添加一列的方式: ALTER TABLE 你的表 ADD COLUMN 新列 char(128); 会造成锁表,简易过程如下: 新建一个和 Table1 完全同构的 Table2 对表 Table1 加写锁 在表 Table2 上执行 AL

  • MYSQL数据库中的现有表增加新字段(列)

    复制代码 代码如下: ALTER TABLE `数据库名`.`表名` ADD COLUMN `PROCID` VARCHAR(6) DEFAULT '' AFTER `PPIDChanged`; --在MYSQL中,如果是表名,数据库名,列名,在你增加,修改,更新的时候都需要使用ESC键盘下的重音符号,才可以添加,相应的列名或者更新修改. 当然现在大多都是用phpmyadmin或mysql图形化操作工具,更方法,这样的是临时使用的,或没有图形界面的方法.大家可以使用上述的图形化工具操作. 下面推

  • 重置MySQL中表中自增列的初始值的实现方法

    重置MySQL中表中自增列的初始值的实现方法 1. 问题的提出 在MySQL的数据库设计中,一般都会设计自增的数字列,用作业务无关的主键. 在数据库出现频繁的删除操作或者清空操作之后,其自增的值仍然会自动增长,如果需要重新开始该如何做呢? 2. 解决办法 a.    alter table delete from table_name; ALTER TABLE table_name AUTO_INCREMENT = 1; 如果数据库表中的数据很多,则删除操作会持续比较久,这个问题需要注意. b.

  • MySQL中如何在原有的表中增加一列

    目录 MySQL在原有的表中增加一列 MySQL table中增加列的SQL语句 1.增加列 2.示例 总结 MySQL在原有的表中增加一列 表已经建好了,但我们需要再增加一列,使用代码: 注意:如果不加after,那新加的列就在表的最后一列,after是让新加的列在哪一列的后面. alter table emp_bonus add column ename varchar(20) not null after empno; 结果如图: MySQL table中增加列的SQL语句 下面是 Mys

  • MySQL使用select语句查询指定表中指定列(字段)的数据

    本文介绍MySQL数据库中执行select查询语句,查询指定列的数据,即指定字段的数据. 再来回顾一下SQL语句中的select语句的语法: Select 语句的基本语法: Select <列的集合> from <表名> where <条件> order by <排序字段和方式> 如果要查询某个表中的指定列的所有数据,则查询语句可以写作: select 列名1,列名2,列名3... from <表名> 要说明一个,这个语句后面仍然可以使用wher

  • mysql创建存储过程实现往数据表中新增字段的方法分析

    本文实例讲述了mysql创建存储过程实现往数据表中新增字段的方法.分享给大家供大家参考,具体如下: 需求: 往某数据库的某个表中新增一个字段(若该字段已存在,则不做操作:若该字段不存在,则新增) 百度了n久,没有符合要求的例子,只有参考加自己琢磨,最终终于给弄出来了,以下是几个版本的更迭 第一版: DELIMITER $$ CREATE PROCEDURE insert_column() BEGIN IF NOT EXISTS(SELECT 1 FROM information_schema.c

  • 在MySQL中同时查找两张表中的数据的示例

    这个例子里面我们从两个表中取出头两行,然后合并到一个表中. 在现实中我们常常会遇到这样的情况,在一个数据库中存在两个表,假设表1储存着公司个产品本季度销售信息,表2储存着公司本季度欠款金额情况.在一个页面中我们想把这两个信息显示出来.通常的做法是在程序中进行两次SQL查询,返回两个结果集,在分别显示出来,非常麻烦. 下面是实现这个功能的代码: CREATE PROCEDURE test AS SET NOCOUNT ON --指示存储过程不返回查询影响的行数 DECLARE @col1c var

  • MySQL中复制数据表中的数据到新表中的操作教程

    MySQL是不支持SELECT - INTO语法的,使用INSERT INTO - SELECT替代相同用法,下面我们我们这里简答分一下新表存在和不存在两种情况,具体使用不同的语句. 1.新表不存在 复制表结构即数据到新表 create table new_table select * from old_talbe; 这种方法会将old_table中所有的内容都拷贝过来,用这种方法需要注意,new_table中没有了old_table中的primary key,Extra,auto_increm

  • MySQL数据库查询进阶之多表查询详解

    目录 一.多表查询 1.引出 2.笛卡尔积 3. 笛卡尔积的解决方法 二.多表查询分类 1.等值连接和非等值连接 2.自连接和非自连接 3.内连接和外连接 4.UNION 4.自然连接 5.using连接 三.子查询 1.不相关子查询 2.相关子查询 四.聚合函数 1.聚合函数介绍 1.1 AVG和SUM函数 1.2 MIN和MAX函数 1.3 COUNT函数 2.group by 3.使用having进行分组后的筛选 五.where和having的对比 六.select的执行过程 1.关键字顺

  • MySQL数据库设计概念及多表查询和事物操作

    目录 数据库设计概念 数据库设计简介 表关系(多对多) 表关系(一对多) 表关系之一对一 多表查询 笛卡尔积现象 内连接查询 嵌套查询(子查询) 事务操作 事务的概念 手动提交事务 自动提交事务 事务原理和四大特征 事务原理 事务的四大特征 事务的并发访问引发的三个问题(面试) 事务的隔离级别 数据库设计概念 数据库设计简介 1.数据库设计概念 数据库设计就是根据业务系统具体需求,结合我们所选用的DBMS,为这个业务系统构造出最优的数据存储模型. 建立数据库中的表结构以及表与表之间的关联关系的过

  • 从MySQL数据库表中取出随机数据的代码

    MySQL 如何从表中取出随机数据  以前在群里讨论过这个问题,比较的有意思.mysql的语法真好玩. 他们原来都想用PHP的实现随机,但取出多条好像要进行两次以上查询. 翻了手册,找到了下面这个语句,可以完成任务了 SELECT * FROM table_name ORDER BY rand() LIMIT 5; rand在手册里是这么说的: RAND()  RAND(N)  返回在范围0到1.0内的随机浮点值.如果一个整数参数N被指定,它被用作种子值.  mysql> select RAND

  • 详解MySQL导出指定表中的数据的实例

    详解MySQL导出指定表中的数据 要求: 1. 不导出创表的语句,因为表已经建好:默认会导出,先drop table然后create table: 2. 导出的insert语句加上ignore,允许重复执行:默认不会加上ignore: 3. insert语句中列出表中的字段,看得更清楚:默认不会: 4. 分记录生成多条insert语句,修改起来比较容易:默认是一条: 最终结果如下: mysqldump -pxxxxxx qzt qf1_mail_account --no-create-info

  • mysql 一次向表中插入多条数据实例讲解

    mysql一次插入多条数据: INSERT INTO hk_test(username, passwd) VALUES ('qmf2', 'qmf2'),('qmf3', 'qmf3'),('qmf4', 'qmf4'),('qmf5', 'qmf5') GO 我们先来创建一种表Authors: CREATE TABLE Authors( AuthID SMALLINT NOT NULL PRIMARY KEY, AuthFN VARCHAR(20), AuthMN VARCHAR(20), A

随机推荐