Skip to main content

ALTER SOURCE

ALTER SOURCE 命令用于修改 source 的定义。

句法

ALTER SOURCE current_source_name 
alter_option;

alter_option 取决于您要对 source 执行的操作。有关所有支持的子句,请参阅下面的章节。

子句

ADD COLUMN

句法
ALTER SOURCE source_name 
ADD COLUMN col_name data_type;
参数或子句描述
ADD COLUMN此子句可在指定的 source 中添加列。
col_name要添加到 source 的新列名称。
data_type新添加列的数据类型。对于结构数据类型,您可以创建嵌套表。嵌套表中的元素需要用尖括号(“<>”)括起来。
示例
-- 在名为 “src1” 的 source 中添加名为 “v3” 的列 
ALTER SOURCE src1
ADD COLUMN v3 int;
note
  • 如果 source 是使用 Schema Registry 创建的,则无法更改列。

  • 在 RisingWave 中,无法向 source 或表添加主键列。要修改 source 或表的主键,则需要重新创建表。

  • 在 RisingWave 中,无法从 source 中删除列。要从 source 中删除列,则需要删除并重新创建 Source。

RENAME TO

句法
ALTER SOURCE source_name 
RENAME TO new_source_name;
参数或子句描述
RENAME TO此子句可更改 source 的名称。
new_source_namesource 的新名称。
示例
-- 将名为 “src” source 的名称更改为 “src1” 
ALTER SOURCE src
RENAME TO src1;

OWNER TO

句法
ALTER SOURCE current_source_name 
OWNER TO new_user;
参数或子句描述
OWNER TO此子句可更改 source 的所有者。
new_user要分配给 source 的新所有者。
示例
-- 将名为 “src” source 的所有者更改为用户 “user1” 
ALTER SOURCE src OWNER TO user1;

SET SCHEMA

句法
ALTER SOURCE current_source_name
SET SCHEMA schema_name;
参数或子句描述
SET SCHEMA此子句可将 source 移动到不同的 schema。
schema_namesource 将移动到的 schema 的名称。
示例
-- 将名为 “test_source” 的 source 移动到名为 “test_schema” 的 schema 
ALTER SOURCE test_source SET SCHEMA test_schema;