MySQL字段添加注释,但不改变字段的类型

之前在导数据库数据的时候,忘记将字段的注释导过来了。现在需要将所有字段都加上注释(崩溃)。由于导数据的过程比较长,业务那边从原始数据库导出了一个 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文本内容再进行拼接,否则会显示错误内容

参考#

posted @   程序员自由之路  阅读(2162)  评论(2编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
历史上的今天:
2019-10-19 你听说过 JMX 么
点击右上角即可分享
微信分享提示
主题色彩