在 oracle 中,我可以:
Alter table table_name
modify column_name datatype;
Run Code Online (Sandbox Code Playgroud)
这在红移数据库中可能吗?
小智 5
增加 Redshift 数据库表中的列大小/类型
不,您不能在不重新创建表的情况下增加 Redshift 中的列大小。
但是如果该列是表中的最后一列,您可以添加具有所需更改的新列并移动数据,然后可以删除旧列,如下所示。
ALTER TABLE TEST ADD COLUMN COLUMN_NEW VARCHAR(100);
UPDATE TEST SET COLUMN_NEW = COLUMN_OLD;
ALTER TABLE TEST DROP COLUMN COLUMN_OLD;
ALTER TABLE TEST RENAME COLUMN COLUMN_NEW TO COLUMN_OLD;
Run Code Online (Sandbox Code Playgroud)
小智 5
最近 AWS 增加了对增加 varchar 列大小的支持,
更改 VARCHAR 列 为了节省存储空间,您可以最初使用 VARCHAR 列定义一个表,该列的大小是当前数据要求所需的最小大小。如果以后需要容纳更长的字符串,可以更改表以增加列的大小。为了保护现有数据,您不能减小列大小。
以下示例将 EVENTNAME 列的大小更改为 VARCHAR(300)。
Run Code Online (Sandbox Code Playgroud)alter table event alter column eventname type varchar(300);
以下命令失败,因为它尝试减小 EVENTNAME 列的大小。
Run Code Online (Sandbox Code Playgroud)alter table event alter column eventname type varchar(100);
归档时间: |
|
查看次数: |
31778 次 |
最近记录: |