之前在导数据库数据的时候,忘记将字段的注释导过来了。现在需要将所有字段都加上注释(崩溃)。由于导数据的过程比较长,业务那边从原始数据库导出了一个 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. Python中的枚举enumerate

  2. Java成神之路:第二帖---- 数据结构与算法之稀疏数组

    数据结构与算法--稀疏数组 转换方法 记录数组有几行几列,有多少个不同的值 把不同的值的元素的行列,记录在一个小规模的数组中,以此来缩小数组的规模 如图: 二维数组转稀疏数组 对原始的二维数组进行遍历 ...

  3. flutter实现可缩放可拖拽双击放大的图片功能

    flutter实现可缩放可拖拽双击放大的图片功能 可缩放可拖拽的功能,可实现图片或者其他widget的缩放已经拖拽并支持双击放大的功能 我们知道官方提供了双击缩放,但是不支持拖拽的功能,我们要实现向百 ...

  4. redis之哨兵部署运行日志解读

    转载自http://www.run-debug.com/?p=674 192.168.110.21 主 192.168.110.31 从 #两台服务器都安装redis #下载最新稳定版本:http:/ ...

  5. redis部署问题

    在部署redis哨兵的时候,一开始一直都是失败:杀死master进程后,没有选出新的master 日志如下 9985:X 18 Feb 20:14:42.409 # +sdown master mym ...

  6. 方法区(Method Area)基础知识

    堆.栈.方法区堆关系 概述 方法区与堆区一样,是各个线程共享的内存区域 方法区在JVM启动时就会被创建,并且它的实际的物理内存空间中和Java堆区一样都可以是不连续的 方法区的大小,跟堆空间一样,可以 ...

  7. 记一次Java获取本地摄像头(基于OpenCV)

    OpenCV官网下载地址(下载安装后,在安装目录可以找到动态链接库和OpenCv.jar) https://opencv.org/releases/ 安装完成后,这是我的安装目录 maven 依赖(这 ...

  8. 新手C++ 练习项目--计算器

    本篇博客用于记录我自己用C++实现的一个计算器,目标是完成加减乘除带括号的四则运算,并在后期用工厂设计模式加以优化. Part 1:calculate 1+1=2 实现这样的一个式子的计算,只需要用到 ...

  9. Spring学习(七)--Spring的AOP

    1.实现AOP的方式:通过proxy代理对象.拦截器字码翻译等. 2.AOP体系分层图,从高到低,从使用到实现: 基础:待增强或者目标对象 切面:对基础的增强应用 配置:把基础和切面结合起来,完成切面 ...

  10. (转载)什么是B+树?

    本文转载自网络. 如有侵权,请联系处理!