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


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

查看所有标签

猜你喜欢:

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

C++Primer Plus

C++Primer Plus

Stephen Prata、孙建春、韦强 / 孙建春、韦强 / 人民邮电出版社 / 2005-5 / 72.00元

C++ Primer Plus(第五版)中文版,ISBN:9787115134165,作者:(美)Stephen Prata著;孙建春,韦强译一起来看看 《C++Primer Plus》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具