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


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

查看所有标签

猜你喜欢:

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

赢在众筹

赢在众筹

杨东、黄超达、刘思宇 / 中国经济出版社 / 2015-1-1 / 48.00

第一本股权众筹体系化图书。李克强总理要求“开展股票众筹融资试点”。人民大学杨东教授,天使街黄超达、刘思宇两位老总倾情创作。阿里巴巴、平安集团、京东等多家机构联袂推荐一起来看看 《赢在众筹》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

MD5 加密
MD5 加密

MD5 加密工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具