

 Amazon Redshift unterstützt UDFs ab Patch 198 nicht mehr die Erstellung von neuem Python. Das bestehende Python UDFs wird bis zum 30. Juni 2026 weiterhin funktionieren. Weitere Informationen finden Sie im [Blog-Posting](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Beispiele für ALTER TABLE ADD und DROP COLUMN
<a name="r_ALTER_TABLE_COL_ex-add-drop"></a>

In den folgenden Beispielen wird gezeigt, wie ALTER TABLE verwendet wird, um eine einfache Tabellenspalte hinzuzufügen und dann zu entfernen und eine Spalte mit einem abhängigen Objekt zu entfernen. 

## Hinzufügen (ADD) und Entfernen (DROP) einer einfachen Spalte
<a name="r_ALTER_TABLE_COL_ex-add-then-drop-a-basic-column"></a>

Im folgenden Beispiel wird der Tabelle USERS die eigenständige Spalte FEEDBACK\_SCORE hinzugefügt. Diese Spalte enthält einfach eine Ganzzahl und der Standardwert für diese Spalte ist NULL (kein Feedbackergebnis). 

Führen Sie zunächst eine Abfrage für die Katalogtabelle PG\_TABLE\_DEF aus, um das Schema der Tabelle USERS anzuzeigen: 

```
column        | type                   | encoding | distkey | sortkey
--------------+------------------------+----------+---------+--------
userid        | integer                | delta    | true    |       1
username      | character(8)           | lzo      | false   |       0
firstname     | character varying(30)  | text32k  | false   |       0
lastname      | character varying(30)  | text32k  | false   |       0
city          | character varying(30)  | text32k  | false   |       0
state         | character(2)           | bytedict | false   |       0
email         | character varying(100) | lzo      | false   |       0
phone         | character(14)          | lzo      | false   |       0
likesports    | boolean                | none     | false   |       0
liketheatre   | boolean                | none     | false   |       0
likeconcerts  | boolean                | none     | false   |       0
likejazz      | boolean                | none     | false   |       0
likeclassical | boolean                | none     | false   |       0
likeopera     | boolean                | none     | false   |       0
likerock      | boolean                | none     | false   |       0
likevegas     | boolean                | none     | false   |       0
likebroadway  | boolean                | none     | false   |       0
likemusicals  | boolean                | none     | false   |       0
```

Fügen Sie nun die Spalte feedback\_score hinzu: 

```
alter table users
add column feedback_score int
default NULL;
```

Wählen Sie die Spalte FEEDBACK\_SCORE aus USERS aus, um zu überprüfen, ob sie hinzugefügt wurde: 

```
select feedback_score from users limit 5;

feedback_score
----------------
NULL
NULL
NULL
NULL
NULL
```

Entfernen Sie die Spalte, um die ursprüngliche DDL wiederherzustellen: 

```
alter table users drop column feedback_score;
```

## Entfernen einer Spalte mit einem abhängigen Objekt
<a name="r_ALTER_TABLE_COL_ex-dropping-a-column-with-a-dependent-object"></a>

In diesem Beispiel wird eine Spalte entfernt, die ein abhängiges Objekt enthält. Daher wird das abhängige Objekt ebenfalls entfernt. 

Fügen Sie zunächst der Tabelle USERS erneut die Spalte FEEDBACK\_SCORE hinzu: 

```
alter table users
add column feedback_score int
default NULL;
```

Erstellen Sie als Nächstes eine Ansicht aus der Tabelle USERS mit dem Namen USERS\_VIEW: 

```
create view users_view as select * from users;
```

Versuchen Sie nun, die Spalte FEEDBACK\_SCORE aus der Spalte USERS zu entfernen. Diese DROP-Anweisung verwendet das Standardverhalten (RESTRICT): 

```
alter table users drop column feedback_score;
```

Amazon Redshift zeigt die Fehlermeldung an, dass die Spalte nicht entfernt werden kann, da ein anderes Objekt von ihr abhängig ist. 

Versuchen Sie erneut, die Spalte FEEDBACK\_SCORE zu entfernen. Geben Sie dieses Mal CASCADE an, um alle abhängigen Objekte zu entfernen: 

```
alter table users
drop column feedback_score cascade;
```