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

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

内容简介:翻译自: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


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

查看所有标签

猜你喜欢:

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

Series 60 应用程序开发

Series 60 应用程序开发

巴克 / 人民邮电出版社 / 2005-7 / 75.0

Series 60智能手机开发平台正掀起新一轮的移动服务浪潮。超过60%的手机生产商获得了Series 60平台的授权。Series 60移动应用开发平台拥有最大的用户群,从而成为智能手机市场的代表。诺基亚与EMCC软件公司合作,为C++程序员和软件设计师编撰了这本Series 60开发的权威指南。本书由诺基亚资深专家进行了全面审阅。本书内容涉及了开发过程的各个阶段,从设计、编程、测试、调试到部署......一起来看看 《Series 60 应用程序开发》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具