IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> postgreSql使用||拼接sql实现一次性修改库里面所有字段的属性 -> 正文阅读

[大数据]postgreSql使用||拼接sql实现一次性修改库里面所有字段的属性

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

需求要实现对所有数据库里面表中几个特定字段的长度完成修改,由于一个一个修改费神费时间,于是想到一个简单方法


提示:以下是本篇文章正文内容,下面案例可供参考

一、先找出所有要修改的字段

之前对这些字段的长度设定的是18 可利用sql:
SELECT column_name FROM information_schema.columns
where character_maximum_length=18 group by column_name;

其实我们数据库里面的schema colum table相关信息都会被数据库记录下来 同样也是记录在表中,类似一些代码生成(比如自动生成增删改查sql)都是基于这个来做的。
具体可以参考:https://blog.csdn.net/iteapoy/article/details/89386252

二、使用步骤

获取到我们需要修改的列名后 就可以使用稍微偷懒一点的方式去修改各个数据库里面字段的属性了
修改colum字段长度的语法为:
ALTER able_name alter COLUMN column_name SET DATA TYPE varchar(40);
将所有我们需要修改的列名和表名查询出来:
SELECT table_name, column_name FROM information_schema.columns
where column_name in (‘colum01’, ‘colum02’, ‘colum03’, ‘colum04’)
and character_maximum_length=18 order by table_name

其实到这里就可以去根据列名和表名记录去替换一条一条执行了 但其实我们可以让数据库帮我们将这些sql写出来

我们可以这样:
SELECT ‘ALTER table ‘||table_name||’ alter COLUMN ‘||column_name||’ SET DATA TYPE varchar(40);’ FROM information_schema.columns
where column_name in (‘comp_pn’, ‘material’, ‘parent_pn’, ‘sci_material’)
and character_maximum_length=18 order by table_name ;

这样查询出来的数据就是一条一条可以执行的sql 直接copy到数据库执行就可以啦 (可能会有表名后缀为default的表,直接过滤就行)


总结

利用数据库的拼接符 || 实现组装sql的目的,感觉是一次思维上的飞跃,又凭实力偷懒一次。

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-09-15 02:04:35  更:2022-09-15 02:06:40 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 10:02:27-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码