postgresql – 在postgres中将表列名更改为大写

栏目: 数据库 · PostgreSQL · 发布时间: 5年前

内容简介:翻译自:https://stackoverflow.com/questions/14351743/change-table-column-names-to-upper-case-in-postgres

我正在使用postgres 9.2.

我需要将postgres db中所有表的所有列名更改为UPPER CASE.

有没有办法做到这一点?

我需要更改postgres中的任何配置吗?

在我解释如何做到这一点之前,我强烈建议不要这样做.

在PostgreSQL中,如果表名或列​​名不加引号,例如:

SELECT Name FROM MyTable WHERE ID = 10

它们实际上首先自动折叠为小写,因此上面的查询与以下内容相同:

SELECT name FROM mytable WHERE id = 10

如果您要将所有名称转换为大写,则此语句将不起作用:

SELECT NAME FROM MYTABLE WHERE ID = 10

您必须在此查询中对每个名称进行双引号才能使其正常工作:

SELECT "NAME" FROM "MYTABLE" WHERE "ID" = 10

另一方面,如果您使用标准的PostgreSQL小写协议,则可以使用任何案例组合,只要您不引用任何名称,它就会起作用.

现在,如果仍然坚持转换为大写,则可以通过使用 pg_dump --schema-only 将数据库模式转储到文件中来实现.

完成后,检查所有 CREATE TABLE 语句并根据此转储构造适当的 ALTER TABLE 语句 – 您必须编写一些脚本(Perl或Python)来执行此操作.

或者,您可以阅读 INFORMATION_SCHEMA.TABLES 和/或 INFORMATION_SCHEMA.COLUMNS ,并构造和执行适当的ALTER TABLE语句.

翻译自:https://stackoverflow.com/questions/14351743/change-table-column-names-to-upper-case-in-postgres


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

函数响应式领域建模

函数响应式领域建模

【美】Debasish Ghosh / 李源 / 电子工业出版社 / 2018-1 / 79

传统的分布式应用不会切入微服务、快速数据及传感器网络的响应式世界。为了捕获这些应用的动态联系及依赖,我们需要使用另外一种方式来进行领域建模。由纯函数构成的领域模型是以一种更加自然的方式来反映一个响应式系统内的处理流程,同时它也直接映射到了相应的技术和模式,比如Akka、CQRS 以及事件溯源。《函数响应式领域建模》讲述了响应式系统中建立领域模型所需要的通用且可重用的技巧——首先介绍了函数式编程和响......一起来看看 《函数响应式领域建模》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换