使用 alter 语句的雪花主键

Snowflake Primary key using alter statement

当我向 snowflake 添加主键时 table 我看到了一些奇怪的东西。

当我运行一个查询

ALTER TABLE "TESTSCHEMA".table1 ADD PRIMARY KEY (ID);

以上查询按预期工作。但是当我尝试 运行

ALTER TABLE IF EXISTS "TESTSCHEMA".table1 ADD PRIMARY KEY (ID);

查询返回错误error line 0 at position 0 invalid identifier 'TOK_IF_EXISTS'

这是一个错误还是我做错了什么?

根据文档,它看起来像是一个错误。您能否提出雪花支持案例以便验证行为?谢谢,

https://docs.snowflake.com/en/sql-reference/sql/alter-table.html

将主键添加到同一列预计会导致如下所示的错误。

创建table "TESTSCHEMA".table (id number); --语句执行成功。

ALTER TABLE "TESTSCHEMA".table 添加主键(ID); --语句执行成功。

ALTER TABLE "TESTSCHEMA".table 添加主键(ID); --SQL编译错误:table'TABLE'

的主键已经存在

创建table "TESTSCHEMA"."table1" (id number); --语句执行成功。

ALTER TABLE "TESTSCHEMA"."table1" 添加主键(ID); --语句执行成功。

ALTER TABLE "TESTSCHEMA"."table1" 添加主键(ID); ---SQL编译错误:table'table1'

的主键已经存在

您分享的测试用例,错误详情可以反馈给Snowflake验证