精华内容
下载资源
问答
  • Mysql修改字段名、修改字段类型

    万次阅读 多人点赞 2018-02-23 15:45:02
    mysql修改字段类型: --能修改字段类型、类型长度、默认值、注释 --对某字段进行修改 ALTER TABLE 表名 MODIFY COLUMN 字段名 新数据类型 新类型长度 新默认值 新注释; -- COLUMN可以省略 alter table table1 ...

    1 修改字段类型、字段名、字段注释、类型长度、字段默认值

    mysql修改字段类型:	 
    --能修改字段类型、类型长度、默认值、注释
    --对某字段进行修改
    ALTER  TABLE 表名 MODIFY [COLUMN] 字段名 新数据类型 新类型长度  新默认值  新注释;
     -- COLUMN关键字可以省略不写
    
    alter  table table1 modify  column column1  decimal(10,1) DEFAULT NULL COMMENT '注释'; -- 正常,能修改字段类型、类型长度、默认值、注释
    
    alter  table table1 modify column1  decimal(10,2) DEFAULT NULL COMMENT '注释'; 
    -- 正常,能修改字段类型、类型长度、默认值、注释
    
    mysql修改字段名:
    ALTER  TABLE 表名 CHANGE [column] 旧字段名 新字段名 新数据类型;	 
    alter  table table1 change column1 column1 varchar(100) DEFAULT 1.2 COMMENT '注释'; -- 正常,此时字段名称没有改变,能修改字段类型、类型长度、默认值、注释
    alter  table table1 change column1 column2 decimal(10,1) DEFAULT NULL COMMENT '注释' -- 正常,能修改字段名、字段类型、类型长度、默认值、注释
    alter  table table1 change column2 column1 decimal(10,1) DEFAULT NULL COMMENT '注释' -- 正常,能修改字段名、字段类型、类型长度、默认值、注释
    alter  table table1 change column1 column2; -- 报错 
    
    mysql> alter table white_user change column name nick_name  varchar(50) null comment '昵称'; -- 正确
    Query OK, 0 rows affected (0.02 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    
    

    2 修改表名

    ALTER TABLE 旧表名 RENAME TO 新表名 ;
    
    mysql> show tables ;
    +-------------------+
    | Tables_in_db_test |
    +-------------------+
    | white_user   |
    +-------------------+
    1 row in set (0.00 sec)
    
    
    
    mysql> alter table white_user rename to white_user_new ;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> show tables ;
    +-------------------+
    | Tables_in_db_test |
    +-------------------+
    | white_user_new    |
    +-------------------+
    1 row in set (0.00 sec)

    3 修改表的注释

    ALTER TABLE 表名 COMMENT '新注释'
    
    mysql> alter table  white_user_new comment '新表-白名单表' ;
    Query OK, 0 rows affected (0.01 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    
    mysql> show create table white_user_new ;
     CREATE TABLE `white_user_new` (
      `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
      `name` varchar(50) NOT NULL COMMENT '姓名',
      `created_time` datetime DEFAULT NULL COMMENT '创建时间',
      `updated_time` datetime DEFAULT NULL COMMENT '更新时间',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='新表-白名单表' 
    
    
    

    4

    在指定位置插入新字段

    ALTER TABLE 表名 ADD [COLUMN] 字段名 字段类型 是否可为空 COMMENT '注释' AFTER 指定某字段 ;
    --COLUMN关键字可以省略不写
    
    mysql> alter table white_user_new add column erp varchar(50) not null comment 'erp账号' after name ;
    Query OK, 0 rows affected (0.03 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    --在name字段后面添加erp字段
    
    mysql> show create table white_user_new ;
    CREATE TABLE `white_user_new` (
      `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
      `name` varchar(50) NOT NULL COMMENT '姓名',
      `erp` varchar(50) NOT NULL COMMENT 'erp账号', 
      `created_time` datetime DEFAULT NULL COMMENT '创建时间',
      `updated_time` datetime DEFAULT NULL COMMENT '更新时间',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='新表-白名单表'      
    
    
    
    
    mysql> alter table white_user_new add position varchar(50) not null comment '岗位' after name ;
    Query OK, 0 rows affected (0.02 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    --在name字段后面添加position字段。
    
    mysql> show create table white_user_new ;                                      
    CREATE TABLE `white_user_new` (
      `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
      `name` varchar(50) NOT NULL COMMENT '姓名',
      `position` varchar(50) NOT NULL COMMENT '岗位',
      `erp` varchar(50) NOT NULL COMMENT 'erp账号',
      `created_time` datetime DEFAULT NULL COMMENT '创建时间',
      `updated_time` datetime DEFAULT NULL COMMENT '更新时间',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='新表-白名单表'      
    
    
    
    mysql> alter table white_user_new add  mobile varchar(50) not null comment '手机号码' before position ;
    --报错,在position字段前添加mobile字段,不能使用before关键字
    

     

    5 删除字段

    ALTER TABLE 表名 DROP [COLUMN] 字段名 ;
    --COLUMN关键字可以省略不写
    
    mysql> alter table white_user_new drop column position ;
    Query OK, 0 rows affected (0.02 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    
    mysql> alter table white_user_new drop erp ;
    Query OK, 0 rows affected (0.02 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    
    mysql> show create table white_user_new ;                                      
    CREATE TABLE `white_user_new` (
      `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
      `name` varchar(50) NOT NULL COMMENT '姓名',
      `created_time` datetime DEFAULT NULL COMMENT '创建时间',
      `updated_time` datetime DEFAULT NULL COMMENT '更新时间',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='新表-白名单表'      
    
    
    
    

     

    更多企业内的技术应用和使用技巧,请移步至我的公众号【程序员实用技能】

    图片

    展开全文
  • MySQL添加字段和修改字段 MySQL添加字段的方法并不复杂,下面将为您详细介绍MYSQL添加字段和修改字段等操作的实现方法,希望对您学习MySQL添加字段方面会有所帮助。 1添加表字段 alter table table1 add ...

    MySQL添加字段和修改字段

    MySQL添加字段的方法并不复杂,下面将为您详细介绍MYSQL添加字段和修改字段等操作的实现方法,希望对您学习MySQL添加字段方面会有所帮助。

     

    1添加表字段

    alter table table1 add transactor varchar(10) not Null;

    alter table   table1 add id int unsigned not Null auto_increment primary key

    添加到特定字段后面的语句例子:

    ALTER TABLE <表名> ADD <新字段名><数据类型>[约束条件];

    ALTER TABLE MyTableName ADD newDBField varchar(30) NULL AFTER existDBField;

    ALTER TABLE tableName001 ADD WebAdminPass varchar(30) NULL AFTER Result;

    2.修改某个表的字段类型及指定为空或非空
    alter table 表名称 change 字段名称 字段名称 字段类型 [是否允许非空];
    alter table 表名称 modify 字段名称 字段类型 [是否允许非空];

    alter table 表名称 modify 字段名称 字段类型 [是否允许非空];

    3.修改某个表的字段名称及指定为空或非空
    alter table 表名称 change 字段原名称 字段新名称 字段类型 [是否允许非空

    4如果要删除某一字段,可用命令:ALTER TABLE mytable DROP 字段名;

     

    mysql SQL获取表名&字段名的查询语句
      1:查询数据库中所有表名
      select table_name

      from information_schema.tables

      where table_schema='csdb' and table_type='base table';

      table_schema:数据库名称
        information_schema 表示系统库。
      table_type='base table‘:限定只查询基表。

      2:查询指定数据库中指定表的所有字段名column_name
       select column_name

         from information_schema.columns

         where table_schema='csdb' and table_name='users';

      table_schema:数据库名
      table_name:表名

    工作用到例子:

    select count(*) from information_schema.columns where table_schema='yanfa' and table_name='tableName001' and column_name='Result1';
    #select table_name from information_schema.tables where table_schema='yanfa' and table_type='base table';

    展开全文
  • 2:修改字段名 语法:exec sp_rename '表名.字段名','修改字段名','COLUMN。 注意:更改对象名的任一部分都可能会破坏脚本和存储过程。 3:删除字段 1):字段存在相关约束  语法:exec sp_...
    1:增加字段
    语法:alter table 表名 add 新增字段名 字段类型 默认值...
    2:修改字段名
    语法:exec sp_rename '表名.字段名','修改字段名','COLUMN。
    注意:更改对象名的任一部分都可能会破坏脚本和存储过程。
    3:删除字段
    1):字段存在相关约束
     语法:exec sp_helpconstraint @objname=表名(查看指定表相关约束详情)
                 alter table 表名 drop constraint 约束名(删除相关约束)
                 alter table 表名 drop cloumn 字段名 (删除字段)
    2):无相关约束
    语法:alter table 表名 drop cloumn 字段名
    4:修改字段默认值
    1):已存在默认值
    语法:exec sp_helpconstraint @objname=表名 (查看指定表相关约束详情)
                alter table 表名 drop constraint 约束名 (删除默认值)
                alter table 表名 add default 默认值 for 字段名
    2:):无默认值
    语法:alter table 表名 add default 默认值 for 字段名
    展开全文
  • 有时[比如在Linux服务器下, 或者借助数据库管理工具执行SQL], 需要使用sql语句直接对数据表进行新建/修改表结构, 填充/更新数据等. 好处: 可以避免繁琐操作, 遗漏, 快捷方便, 一步到位. 2.学习/操作 ...

    1.应用场景

    有时[比如在Linux服务器下]需要使用SQL语句直接对数据表进行新建/修改表结构, 填充/更新数据等.

    或借助数据库管理工具执行SQL,但是这种方法,比较适合做微小的操作~

     

    好处:

    使用SQL去操作,可以避免繁琐, 遗漏, 快捷方便, 一步到位.

    2.学习/操作

    前言:

    1. 本文中有部分SQL没有采用大写,但是推荐关键字使用大写字~~

    2. 在应用到生产环境之前,一定要在本地/测试环境做测试,确认无误才可以放到生产环境执行~~

     

    新补充  // 20190903

    1. 添加字段,比如我在数据表中添加一个 age 字段,类型为int(11)

    ALTER TABLE player ADD (age int(11));

    2. 修改字段名,将 age 字段改成player_age

    ALTER TABLE player RENAME COLUMN age to player_age

    3. 修改字段的数据类型,将player_age的数据类型设置为float(3,1)

    ALTER TABLE player MODIFY (player_age float(3,1));

    4. 删除字段, 删除刚才添加的player_age字段

    ALTER TABLE player DROP COLUMN player_age;

    1.修改字段默认值

    alter table 表名 drop constraint 约束名字   ------说明:删除表的字段的原有约束

    alter table 表名 add constraint 约束名字 DEFAULT 默认值 for 字段名称 -------说明:添加一个表的字段的约束并指定默认值

    2.修改字段名

    语法:// 验证通过

    ALTER TABLE <表名> CHANGE <字段名> <字段新名称> <字段的类型>

    例子

    ALTER TABLE `ue4_map` CHANGE  `levelpath` `filepath` VARCHAR(255);
    ALTER TABLE `ue4_blueprint` CHANGE `strObjectPath` `filepath` VARCHAR(255);

    Note

    ALTER TABLE 表名 RENAME COLUMN A TO B;   // 验证没成功

    3.修改字段类型

    ALTER TABLE 表名 ALTER COLUMN UnitPrice DECIMAL(18, 4) NOT NULL

    4.增加字段

    ALTER TABLE 表名 ADD 字段 类型 NOT NULL DEFAULT 0

    5.增加 / 删除字段备注

    Note:

    字段已经存在 ==> MODIFY,  不存在 ==> ADD

     

    添加备注

    /*oracle*/

    comment on column 表名.列名 is '备注';


    /*mysql*/

    ALTER TABLE 表名 MODIFY 字段名 类型 COMMENT '备注';

    删除备注

    /*mysql*/

    ALTER TABLE 表名 MODIFY  字段名 类型 COMMENT '';

     

    下面用法:

    Alter table `db_jddts_jsmj_1_tdw`.`lg2_hero_baseattr`   -- db_jddts_jsmj_1_tdw:数据库名
      add column `num` int(11) NOT NULL Auto_increment first,  -- 添加字段,并且处于第一列
      add column `versionTime` varchar(11) NOT NULL after `num`, -- 添加字段,处于num后面
      change `heroid` `heroid` int(11) NULL,  -- 改变字段类型
      drop primary key, -- 删除主键
      add primary key (`num`) -- 添加主键

    添加主键字段:

    alter table `version` ADD  id int(11) not null auto_increment primary key COMMENT '主键' first; 

    6. 复制表 使用关键字 LIKE   // 20200119

    已经有user_login表, 现在要[水平分表]创建100个相同的表, 使用如下即可, 或者通过存储过程[TBD]

    CREATE TABLE user_login0 LIKE user_login;
    CREATE TABLE user_login1 LIKE user_login;
    CREATE TABLE user_login2 LIKE user_login;
    CREATE TABLE user_login3 LIKE user_login;
    CREATE TABLE user_login4 LIKE user_login;
    CREATE TABLE user_login5 LIKE user_login;
    CREATE TABLE user_login6 LIKE user_login;
    CREATE TABLE user_login7 LIKE user_login;
    CREATE TABLE user_login8 LIKE user_login;
    CREATE TABLE user_login9 LIKE user_login;
    CREATE TABLE user_login10 LIKE user_login;

    ....

     

    CREATE TABLE user_login99 LIKE user_login;

    -- 备注:

    -- 借助上面的序号可以借助Excel实现或者脚本来实现;

     

    执行结果如下:

     

    7.win10下,查看保存sql脚本的地方:

    可以看到之前保存的sql查询 C:\Users\xinfning\Documents\Navicat\MySQL\Servers   // 公司电脑

    C:\Users\william_ning\Documents\Navicat\MySQL\Servers\xxxxx\database_name

    Navicat

     

    硬盘

     

    8.模板参考 // Sublime中编辑

    -- 1.修改test_1表 添加 hascount与note字段

    ALTER TABLE test_1 ADD hascount INTEGER NOT NULL Default 0 COMMENT '总编制';
    
    ALTER TABLE test_1 ADD note TEXT COMMENT '备注';

     

    -- 2.新增test_2表

    DROP TABLE IF EXISTS `test_2`;
    
    
    CREATE TABLE `test_2`  (
      `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID',
      `operate_time` varchar(25) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '操作时间',
      `operator_id` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '操作者id',
      `proname` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '项目名',
      `update_field` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '变更字段',
      `update_before` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '变更前',
      `update_after` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '变更后',
      PRIMARY KEY (`id`) USING BTREE
    ) ENGINE = InnoDB AUTO_INCREMENT = 146 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;

     

    -- 3.新增test_3表

    DROP TABLE IF EXISTS `test_3`;
    
    
    CREATE TABLE `test_3`  (
      `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键id',
      `group_name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '组名',
      `hascount` int(11) NULL DEFAULT NULL COMMENT '总编制',
      `note` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '备注',
      PRIMARY KEY (`id`) USING BTREE
    ) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;

     

     

     

    后续补充

    ...

    3.问题/补充

    TBD

    4.参考

    TBD

    后续补充

    ...

    这里写图片描述

    展开全文
  • hive修改字段及字段类型

    万次阅读 2020-01-15 16:19:53
    hive修改字段类型语句:alter table 表名 change column 原字段名 新字段名 字段类型; alter table user_chain change column u_register u_registe date;(u_register原类型为string类型) 这样修改会报一个错误...
  • hive 修改字段类型和增加字段表

    万次阅读 2018-12-04 15:34:13
    Hive 表修改字段类型 Alter table 表名 change column 原字段名称 现字段名称 数据类型   新增字段表 alter table 表名 add columns(字段名 数据类型)    
  • 修改字段名和字段备注

    千次阅读 2019-03-27 14:23:21
    Oracle修改字段名: -- 修改字段名 alter table tableName rename column oldCName to newCName; Oracle修改字段备注 -- 修改字段备注 comment on column tableName.column is '字段备注'; ...
  • 一  增加字段、删除字段、修改字段名称、修改字段类型
  • Sql Server 增加字段、修改字段、修改类型、修改默认值 1、修改字段名:  alter table 表名 rename column A to B 2、修改字段类型:  alter table 表名 alter column 字段名 type not null 3、修改字段...
  • sql 修改字段

    千次阅读 2018-05-05 16:44:32
    1、修改字段名:  alter table 表名 rename column A to B 2、修改字段类型:  alter table 表名 alter column 字段名 type not null 3、修改字段默认值(如果字段有默认值,则需要先删除字段的约束,在添加新...
  • Mysql 修改字段默认值

    万次阅读 2018-11-05 10:30:11
    环境描述: MySQL 5.7.13 问题描述: 建表的时候,users_info表的role_id字段没有默认值,后期发现注册的时候,需要提供给用户一个默认角色,也就是给role_id字段一个...修改字段默认值:role_id默认值设置...
  • 数据库修改字段

    千次阅读 2018-09-07 15:15:32
    修改字段 逻辑就是 1,先新增一个字段, 2,把要修改的字段值赋给新字段, 3,如果要修改的字段有外键,要先删除外键, 4,把新字段名改成老字段的名字。 aaaa 为表名 ssss 为新增字段 bbbbb 为老字段 –...
  • sql 修改字段 删除字段操作

    千次阅读 2018-05-02 09:29:51
    1、修改字段 --修改字段名 alter table [表名] rename column oldCname to newCName; --修改数据类型 alter table [表名] modify (columnName 数据类型); 2、删除字段 alter table [表名] drop column [字段名] ....
  • SQl Server 添加字段、修改字段

    万次阅读 2017-08-25 15:37:46
    Sql Server 增加字段、修改字段、修改类型、修改默认值 1、修改字段名:  alter table 表名 rename column A to B 2、修改字段类型:  alter table 表名 alter column 字段名 type not null ...
  • 修改字段注释

    千次阅读 2019-01-04 15:25:26
    (对于我来说~修改表名表字段一直觉得很在行 今天…突然一个任务让我修改字段注释,让我为难的用了两分钟翻文档终于…hhhhh…所以决定记下来下次再用到就可以直接翻自己的博客了…nice(隐藏笑容中)) 首先查看下表...
  • Sql Server 增加字段、修改字段、修改类型、修改默认值 一.修改列名 EXEC sp_rename '表名.[字段旧名]', '字段新名' , 'COLUMN'; 2、修改字段类型:  alter table 表名 alter column 字段名 type not null...
  • sql语句添加字段: alter table 表名 ADD 字段名 tinyint(1) DEFAULT NULL COMMENT ‘这是注释’;...sql语句修改字段名称 alter table 表名 change 修改前的字段名称 修改后的字段名称 smallint(5) unsign...
  • 内容描述:修改表中的字段名,并修改字段的数据类型。 相关知识 为了完成本关任务,你需要掌握:1.如何修改字段名;2.如何修改字段的数据类型。 修改字段名 有时,在我们建好一张表后会突然发现,哎呀!字段名貌似写...
  • 修改字段默认值alter table 表名 drop constraint 约束名字 ------说明:删除表的字段的原有约束修改字段名alter table 表名 rename column A to B修改字段类型alter table 表名 alter column UnitPrice decimal(18,...
  • --一、修改字段默认值 alter table 表名 drop constraint 约束名字 ------说明:删除表的字段的原有约束 alter table 表名 add constraint 约束名字 DEFAULT 默认值 for 字段名称 -------说明:添加一个表的字段的...
  • 2、修改字段类型:  alter table 表名 modify column 字段名 字段类型(长度) 3、修改字段名称和类型: alter table 表名 change 现有字段名称 修改后字段名称 数据类型 4、增加字段:  alter table 表名 add ...
  • sql修改字段长度

    千次阅读 2020-05-26 11:44:50
    sql修改字段长度的语法 alter table 表名 modify 字段名 字段类型; 标准sql所有都适用 alter table 数据库.表名 modify 字段名 字段类型; 修改字段名名称 alter table 数据库名 表名 column col1 to col2; ...
  • mysql添加字段和修改字段的位置

    千次阅读 2019-09-03 11:12:27
    修改字段的位置: 修改字段排列位置 ALTER TABLE 表名 MODIFY 字段名1 数据类型 FIRST|AFTER 字段名2 参数说明 FIRST,可选参数 将字段1,修改为表的第一个字段。 AFTER 字段名2 将字段1,插入到字段2的后面。 ...
  • mysql建表完成后修改字段的位置: ALTER TABLE <表名> MODIFY <修改字段> varchar(200) AFTER <被修改字段> 字符类型一定要加上!将修改字段放在被修改字段的后面

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 45,989
精华内容 18,395
关键字:

修改字段