发布网友 发布时间:2022-04-23 17:01
共2个回答
懂视网 时间:2022-05-01 01:09
在网站重构中,通常会进行数据结构的修改,所以添加,删除,增加mysql表的字段是难免的,有时为了方便,还会增加修改表或字段的注释,把同字段属性调整到一块儿。这些操作可以在phpmyadmin或者别的mysql管理工具中完成,但是我们有时为了更方便的管理,会选择写sql语句来实现。1.增加一个字段
代码如下 | 复制代码 |
//增加一个字段,默认为空 alter table user add COLUMN new1 VARCHAR(20) DEFAULT NULL; //增加一个字段,默认不能为空 alter table user add COLUMN new2 VARCHAR(20) NOT NULL; |
2.批量怎加字段
方法一
这里可以使用事务
代码如下 | 复制代码 |
bagin; //事务开始 alter table em_day_data add f_day_house7 int(11); alter table em_day_data add f_day_house8 int(11); alter table em_day_data add f_day_house9 int(11); alter table em_day_data add f_day_house10 int(11); commit; //提交事务,事务结束 |
事务(transaction)是由一系列操作序列构成的程序执行单元,这些操作要么都做,要么都不做,是一个不可分割的工作单位。
方法二
mysql 批量为表添加多个字段
alter table 表名 add (字段1 类型(长度),字段2 类型(长度),字段3 类型(长度));
代码如下 | 复制代码 |
alter table em_day_data add (f_day_house11 int(11),f_day_house12 int(11),f_day_house13 int(11)); |
3.删除一个字段
代码如下 | 复制代码 |
//删除一个字段 alter table user DROP COLUMN new2; |
4.修改一个字段
代码如下 | 复制代码 |
//修改一个字段的类型 alter table user MODIFY new1 VARCHAR(10); //修改一个字段的名称,此时一定要重新指定该字段的类型 alter table user CHANGE new1 new4 int; |
5.批量修改字段名称
代码如下 | 复制代码 |
alter table 表 change 修改前字段名 修改后字段名称 int(11) not null, change 修改前字段名 修改后字段名称 int(11) not null, change 修改前字段名 修改后字段名称 int(11) not null, change 修改前字段名 修改后字段名称 int(11) not null, change 修改前字段名 修改后字段名称 int(11) not null |
例子:
代码如下 | 复制代码 |
alter table em_day_data change f_day_house11 f_day_hour11 int(11) not null, change f_day_house12 f_day_hour12 int(11) not null, change f_day_house13 f_day_hour13 int(11) not null, change f_day_house14 f_day_hour14 int(11) not null, change f_day_house15 f_day_hour15 int(11) not null, change f_day_house16 f_day_hour16 int(11) not null, change f_day_house17 f_day_hour17 int(11) not null |
6,添加注释
代码如下 | 复制代码 |
// 可以为表添加注释 ALTER TABLE `table_name` COMMENT‘注释‘; // 为字段添加注释,同样适用于修改 ALTER TABLE `table_name` CHANGE `column_name` `column_name` type(longth) UNSIGNED NULL DEFAULT NULL COMMENT ‘注释‘ |
7,调整字段顺序:
alter table 表名
change 字段名 新字段名 字段类型 默认值 after 字段名(跳到哪个字段之后)
例子:
代码如下 | 复制代码 |
alter table appstore_souapp_app_androidmarket; change getPriceCurrency getPriceCurrency varchar(50) default null AFTER getPrice; |
Mysql中用SQL增加、删除字段,修改字段名、字段类型、注释,调整字段顺序总结
标签:
热心网友 时间:2022-04-30 22:17
创建数据表的时候,字段在表中的排列位置就已经确定了。不过,使用ALTER TABLE语句可以改变字段在表中的排列位置。
在MySQL中,修改字段排列位置的基本语法格式如下:
ALTER TABLE 表名 MODIFY 字段名1 数据类型 FIRST | AFTER 字段名2;
其中:
•字段名1:表示需要修改位置的字段的名称。
•数据类型:表示“字段名1”的数据类型。
•FIRST:指定位置为表的第一个位置。
•AFTER 字段名2:指定“字段名1”插入在“字段名2”之后。
MySQL字段修改到第一个位置
FIRST参数可以指定字段为表的第一个字段。
实例:将ke369表中的stu_name字段修改为该表的第一个字段。操作步骤如下:
1. 使用DESC语句查看ke369表的结构,以查看stu_name字段的排列位置。如下图所示:
查看stu_name字段的排列位置
从查询结果中可以看出,stu_ www.hbbz08.com name字段为ke369表的第二个字段。
2. 将ke369表中的stu_name字段修改为该表的第一个字段。SQL代码如下:
ALTER TABLE ke369 MODIFY stu_name VARCHAR(30) FIRST;
在DOS提示符窗口中查看MySQL字段修改到第一个位置的操作效果。如下图所示:
在DOS提示符窗口中查看MySQL字段修改到第一个位置的操作效果
代码执行完毕,结果显示stu_name字段修改成功。
3. 使用DESC语句重新查看ke369表的结构,以检查stu_name字段在该表中的新位置。如下图所示:
检查stu_name字段在该表中的新位置
查询结果显示,stu_name字段已经成为了ke369表中的第一个字段,操作成功。
MySQL字段修改到指定位置
“AFTER 字段名2”参数可以将字段重新设置到表中指定的字段之后。
实例:将ke369表中num字段更改到address字段之后。操作步骤如下:
1. 从上图中可以看出,num字段排在address字段的前面。
2. 将ke369表中num字段更改到address字段之后。SQL代码如下:
ALTER TABLE ke369 MODIFY num INT(8) AFTER address;
在DOS提示符窗口中查看MySQL字段修改到指定位置的操作效果。如下图所示:
在DOS提示符窗口中查看MySQL字段修改到指定位置的操作效果
代码执行完毕,结果显示num字段修改成功。
3. 使用DESC语句重新查看ke369表的结构,以便检查num字段是否排在了address字段后面。如下图所示: