drop table not working because illegal characters in name

0

I have created a table in Redshift accidentally putting a period in the name. I intended to create a table called "clusters" in my schema called "client3". However instead of the command

CREATE TABLE client3.clusters

I used the command

CREATE TABLE "client3.clusters"

and now I have a table called "client3.clusters" in my public schema.

If I click on the 3 dots to the right of the table name and choose Drop Table, the query field gets populated with this:

drop table public.client3.clusters;

I get this error message:

ERROR: cross-database reference to database "public" is not supported.

If I try to use quotes, as in

drop table "public.client3.clusters";

I get the error message

ERROR: Table "public.client3.clusters" does not exist

even though I see this table in the list under public.

I would appreciate some advice on how to drop this table. Thanks!

已提问 3 年前568 查看次数
2 回答
0
已接受的回答

You need to double quote the table name separately:

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
已回答 3 年前
profile picture
专家
已审核 1 个月前
0

Thank you! Worked perfectly.

已回答 3 年前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则