Redshift删除表操作失败,因为名称中包含非法字符。

0

【以下的问题经过翻译处理】 我不小心在Redshift中创建了一个名字带有句点的表。我本打算在我的架构“client3”中创建一个名为“clusters”的表。然而,我使用了以下命令,而不是命令:

CREATE TABLE client3.clusters

我使用了以下命令:

CREATE TABLE“client3.clusters”

现在我在我的公共模式中有一个名为“client3.clusters”的表。

如果我点击表名右侧的3个点并选择“删除表”,查询字段将被填充为:

drop table public.client3.clusters;

我得到以下错误消息:

ERROR: 不支持跨数据库引用到数据库“public”。

如果我尝试使用引号,如下所示:

drop table“public.client3.clusters”;

我得到错误消息

ERROR:表“public.client3.clusters”不存在,即使我在公共列表下看到这个表。

我希望能得到如何删除这个表的建议。谢谢!

profile picture
EXPERTE
gefragt vor 6 Monaten2 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 你需要分别用双引号引起来表名:

dev=# CREATE TABLE "client3.clusters" AS SELECT 1;
SELECT
dev=# DROP TABLE "public.client3.clusters";
ERROR:  Table "public.client3.clusters" does not exist
dev=# DROP TABLE public."client3.clusters";
DROP TABLE

profile picture
EXPERTE
beantwortet vor 6 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen