之前在导数据库数据的时候,忘记将字段的注释导过来了。现在需要将所有字段都加上注释(崩溃)。由于导数据的过程比较长,业务那边从原始数据库导出了一个 Excel,里面有所有字段的注释,然后让我们根据这个注释一个个加。

MySQL添加注释语句

之前以为给MySQL字段添加注释很容易,但是找了下都是需要同时修改字段类型的,和我们的需求不符。比如

ALTER TABLE tb_name MODIFY COLUMN name col_type  COMMENT "注释";

上面的修改语句中都需要指定新的字段类型才能加新的注释,但是我们又不知道字段的具体类型,这个方式行不通。

最后在网上找了一个修改元数据表的方法来添加注释。

UPDATE information_schema.COLUMNS t  SET t.column_comment  = "注释" WHERE t.TABLE_SCHEMA= "schema1" AND t.table_name="tbl_name"  AND t.COLUMN_NAME= "col_name"

使用 Excel 拼接 SQL

业务给到我们的 Excel 文件内容如下:

inner_code trading_day prev_close_price open_price high_price low_price
内码 交易日 昨收 开盘价 最高价 最低价

第一行是表的具体字段,第二行是字段的具体注释。作为一个程序员,我发现这个操作可以通过 Excel 进行 SQL 拼接。具体做法如下:

step1:拷贝第一行的字段到另一个sheet页,并进行转列复制(见红色方框)

行转列后效果如下:

step2:将注释列进行同样的行转列复制

step3:通过Excel字符串拼语句进行拼接

我们只需要在C3列输入以下拼接语句就可以进行sql拼接了,然后使用Excel的下拉功能可以进行所有字段的注释脚本拼接。

 ="UPDATE information_schema.COLUMNS t  SET t.column_comment  = '" & A1 & "' WHERE t.TABLE_SCHEMA='schema1' AND t.table_name='tbl_name'  AND t.COLUMN_NAME='" & B2 & "';"

上面的拼接语句中:

  • 拼接用&
  • 拼接的内容需要用“”引起
  • 如果是日期单元格,拼接内容需要将其转为TEXT文本内容再进行拼接,否则会显示错误内容

MySQL字段添加注释,但不改变字段的类型的更多相关文章

  1. sql 给数据库表 字段 添加注释

    最近发现一些代码生成器 有针对注释做一个很好的转化,之前建表的时候 没有这块的注释.现在想增加,专门去看了下 如何增加注释 1 -- 表加注释 2 EXEC sys.sp_addextendedpro ...

  2. powerdesigner 字段添加注释和默认值

    powerdesigner 字段添加注释和默认值 2017年01月06日 10:59:02 qingzhuoran 阅读数:27161更多 个人分类: powerdesigner   1.选中表,右键 ...

  3. 【PowerDesigner】【3】字段添加注释和默认值

    问题:最开始生成的Table,表头有些字段没有 解决方案: 1,打开表(双击左键),点击下图圈起来的图标 2,找到comment(注释),勾选 3,找到default value(默认值),勾选 4, ...

  4. 【laravel5.6】 Laravel 数据迁移给表和字段添加注释

    1 引用DB use Illuminate\Support\Facades\DB; 2 up方法 public function up() { Schema::create('code_table', ...

  5. Oracle | 给表和字段添加注释

    comment  on  column  表名.字段名   is  '注释内容'; comment on column OPERATOR_INFO.MAIN_OPER_ID is '归属操作员'; c ...

  6. navicat for mysql中添加注释

    mysql; # 这注释持续到行尾 mysql; -- 这注释持续到行尾 mysql ; mysql+ /* 这是 多行注释 */

  7. mysql添加注释

    -- 查看字段类型-- show columns from campaign_distribute --给表添加注释 -- alter table campaign_distribute commen ...

  8. mysql 添加注释

    给表添加注释:  alter table m_tb100_disabledsoldier comment '残疾士兵';   给表中的字段添加注释alter table m_tb100_disable ...

  9. PowerDesigner 如何添加每个表中共用的字段及自动添加注释

    PowerDesigner 如何添加每个表中共用的字段: 有时候在创建表的时候会有一些共用的字段,但是每一张表都要去创建,这样做很麻烦,特别是这样重复的工作,稍不留意就会出现问题,实际上在PD中有这样 ...

随机推荐

  1. 1. QCamera2基础组件——cam_semaphore

    /* Copyright (c) 2012, The Linux Foundation. All rights reserved. * * Redistribution and use in sour ...

  2. Vue等待父组件异步请求回数据'后'传值子组件

    问题: 让子组件在父组件有哪个数据的时候再渲染, 解决方案: 可以在父组件上加一个判断条件, 举例说明: <a-component :opt="opt" v-if=" ...

  3. Java文件操作API功能与Windows DOS命令和Linux Shell 命令类比

    Java文件操作API功能与Windows DOS命令和Linux Shell 命令类比: Unix/Linux (Bash) Windows(MS-DOS) Java 进入目录 cd cd - 创建 ...

  4. 容器云平台No.7~kubernetes监控系统prometheus-operator

    简介 prometheus-operator Prometheus:一个非常优秀的监控工具或者说是监控方案.它提供了数据搜集.存储.处理.可视化和告警一套完整的解决方案.作为kubernetes官方推 ...

  5. windows服务器中创建账号及管理相关的net命令

    本文测试环境:windows server 2012 R2 Datacenter 实例要求: 1.创建账号,加入到远程桌面组,能实现远程桌面登录 2.指定Full name .及Description ...

  6. Android动画系列之帧动画和补间动画

    原文首发于微信公众号:jzman-blog,欢迎关注交流! Android 提供三种动画:帧动画.补间动画和属性动画,本篇文章介绍帧动画以及补间动画的使用,属性动画的使用将在后面的文章中分享,那就来复 ...

  7. 使用C#创建WebService实例

    新增WebService专案 更改服务程式名称 重命名程式名称 Service1.asmx 修改为 TestService.asmx 此时下面的cs代表文件也会跟着修改,但可发现,代码中的类名并没有跟 ...

  8. linux_命令格式和命令提示符

    # linux 中一切皆文件 命令格式: 命令 [功能选项] [文件路径] cmd [options] [path] # 多个功能选项,要放在一起,如 rsync -avz /backup backu ...

  9. Python numpy总结(3)——常用函数用法

    1,np.ceil(x, y) 限制元素范围,进一法,即向上取整. x 表示输入的数据  y float类型 表示每个元素的上限. a = np.array([-1.7, -1.5, -0.2, 0. ...

  10. Python练习题 006:输出九九乘法表

    [Python练习题 006] 输出九九乘法表 --------------------------------------------------- 照理这题不难,逻辑关系弄对了就好办,但数学渣的我 ...