gpt4 book ai didi

postgresql - 为什么我看不到表的列名?

转载 作者:行者123 更新时间:2023-11-29 11:13:28 26 4
gpt4 key购买 nike

所以我以编程方式制作了一些表格,我想验证它的结构是否符合我的想法。

>Rocko=# \c Rocko
Password for user Rocko:
psql (8.4.4, server 8.4.8)
You are now connected to database "Rocko".
Rocko=# \d
List of relations
Schema | Name | Type | Owner
--------+--------------+----------+-------
public | Email | table | Rocko
public | Email_id_seq | sequence | Rocko
public | Test | table | Rocko
public | Test_id_seq | sequence | Rocko
public | User | table | Rocko
public | User_id_seq | sequence | Rocko
(6 rows)

因此,例如,我想查看测试中的列。

Rocko=#\d 测试

没有找到任何名为“Test”的关系。

等一下?! Test不是刚出现在“关系列表”下吗?这是怎么回事?

最佳答案

PostgreSQL 默认将不带引号的标识符(例如表名和列名)转换为小写;标准说标识符应该被规范化为大写,但这在这里并不重要。所以,当你这样说时:

\d Test

PostgreSQL 认为这与\d test 相同。您可能有一个用引号引起来的名称创建的表:

create table "Test" ( ...

这样它的名字是区分大小写的,并且每次被引用时都必须用引号引起来(用双引号引起来)。所以尝试引用名称:

\d "Test"

关于postgresql - 为什么我看不到表的列名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7910164/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com