简体   繁体   English

如何将 SUPER 列添加到现有 AWS Redshift 表?

[英]How to add SUPER column to existing AWS Redshift table?

GOAL目标

  • I would like to add a Redshift SUPER column to and existing redshift table.我想在现有的 redshift 表中添加一个 Redshift SUPER
  • I need this to store JSON data there我需要这个来存储 JSON 数据

CODE代码

This is how Normally I would add a new column.这就是我通常会添加新列的方式。

ALTER TABLE products 
ADD COLUMN created_at NOT NULL;

1. Tried 1.试过

CREATE TABLE temp_test_persons (
    PersonID int,
    LastName varchar(255),
    FirstName varchar(255),
    Address varchar(255),
    City varchar(255)
);

ALTER TABLE temp_test_persons ADD COLUMN newSuperColumn SUPER NOT NULL; 

Error running query: ALTER TABLE ADD COLUMN defined as NOT NULL must have a non-null default expression运行查询时出错:ALTER TABLE ADD COLUMN 定义为 NOT NULL 必须具有非空默认表达式

Reviewed Solutions审查的解决方案

ALTER TABLE temp_test_persons 
ADD COLUMN newSuperColumn SUPER;

The solution is to set a default value for the column.解决方案是为该列设置一个默认值。 Then you can define the column as NotNull.然后您可以将列定义为 NotNull。 Like this像这样

ALTER TABLE temp_test_persons 
ADD COLUMN newSuperColumn SUPER NOT NULL 
DEFAULT '';

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM