Datenbanken, Tabellen und Spalten benennen - Amazon Athena

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.

Datenbanken, Tabellen und Spalten benennen

Verwenden Sie diese Richtlinien für die Benennung von Datenbanken, Tabellen und Spalten in Athena.

Anforderungen an Datenbank-, Tabellen- und Spaltennamen

  • Zulässige Zeichen für Datenbanknamen, Tabellennamen und Spaltennamen in AWS Glue müssen eine Zeichenfolge von UTF -8 sein und sollten in Kleinbuchstaben geschrieben werden. Beachten Sie, dass Athena beim Erstellen von Datenbanken, Tabellen oder Spalten automatisch alle Großbuchstaben in DDL Abfragen senkt. Die Zeichenfolge darf nicht weniger als 1 oder mehr als 255 Byte lang sein.

  • Derzeit ist es möglich, führende Leerzeichen am Anfang von Namen zu verwenden. Da diese führenden Leerzeichen schwer zu erkennen sind und nach der Erstellung zu Problemen mit der Benutzerfreundlichkeit führen können, sollten Sie vermeiden, versehentlich Objektnamen mit führenden Leerzeichen zu erstellen.

  • Wenn Sie eine AWS: :Glue: AWS CloudFormation :Database-Vorlage verwenden, um eine AWS Glue Datenbank zu erstellen und keinen Datenbanknamen angeben, generiert AWS Glue automatisch einen Datenbanknamen im Format resource_name–random_string das ist nicht kompatibel mit Athena.

  • Sie können den AWS Glue Katalogmanager verwenden, um Spalten umzubenennen, aber keine Tabellen- oder Datenbanknamen. Um diese Einschränkung zu umgehen, müssen Sie eine Definition der alten Datenbank verwenden, um eine Datenbank mit dem neuen Namen zu erstellen. Anschließend verwenden Sie Definitionen der Tabellen aus der alten Datenbank, um die Tabellen in der neuen Datenbank neu zu erstellen. Dazu können Sie das AWS CLI oder verwenden AWS Glue SDK. Informationen zu den erforderlichen Schritten finden Sie unter Verwenden Sie die AWS CLI , um eine AWS Glue Datenbank und ihre Tabellen neu zu erstellen.

Tabellen- und Tabellenspaltennamen in Athena dürfen nur Kleinbuchstaben enthalten

Athena akzeptiert in DDL - und DML Abfragen Groß- und Kleinschreibung, bei der Ausführung der Abfrage jedoch Kleinbuchstaben. Vermeiden Sie daher die Verwendung von Groß- und Kleinschreibung für Tabellen- oder Spaltennamen, und verlassen Sie sich nicht auf die Groß-/Kleinschreibung in Athena, um solche Namen zu unterscheiden. Wenn Sie beispielsweise eine DDL Anweisung verwenden, um eine Spalte mit dem Namen zu erstellenCastle, wird die erstellte Spalte in Kleinbuchstaben geschrieben. castle Wenn Sie dann den Spaltennamen in einer DML Abfrage als Castle oder angebenCASTLE, schreibt Athena den Namen klein, damit Sie die Abfrage ausführen können, zeigt die Spaltenüberschrift jedoch in der Groß-/Kleinschreibung an, die Sie in der Abfrage ausgewählt haben.

Datenbank-, Tabellen- und Spaltennamen müssen mindestens 255 Zeichen lang sein.

Namen, die mit einem Unterstrich beginnen

Verwenden Sie beim Erstellen von Tabellen umgekehrte Anführungszeichen, um Tabellen-, Ansichts- oder Spaltennamen einzuschließen, die mit einem Unterstrich beginnen. Beispielsweise:

CREATE EXTERNAL TABLE IF NOT EXISTS `_myunderscoretable`( `_id` string, `_index` string) LOCATION 's3://amzn-s3-demo-bucket/'

Tabellen-, Ansichts- oder Spaltennamen, die mit Ziffern beginnen

Setzen Sie bei der Ausführung von SELECT-, CTAS- oder VIEW-Abfragen Anführungszeichen um Bezeichner wie Tabellen-, Ansichts- oder Spaltennamen, die mit einer Ziffer beginnen. Beispielsweise:

CREATE OR REPLACE VIEW "123view" AS SELECT "123columnone", "123columntwo" FROM "234table"

Spaltennamen und komplexe Typen

Bei komplexen Typen sind nur alphanumerische Zeichen, Unterstrich (_) und Punkt (.) in Spaltennamen erlaubt. Um eine Tabelle und Zuordnungen für Schlüssel mit eingeschränkten Zeichen zu erstellen, können Sie eine benutzerdefinierte Anweisung verwenden. DDL Weitere Informationen finden Sie im Artikel Erstellen von Tabellen in Amazon Athena aus verschachtelten Tabellen JSON und Zuordnungen mithilfe von Zuordnungen JSONSerDe im AWS Big Data-Blog.

Reservierte Wörter

Bestimmte reservierte Wörter in Athena müssen mit Escape-Zeichen versehen werden. Um reservierte Schlüsselwörter in DDL Anweisungen zu umgehen, schließen Sie sie in Backticks (`) ein. Um reservierte Schlüsselwörter in SQL SELECT Anweisungen und Abfragen von Ansichten zu maskieren, setzen Sie sie in doppelte Anführungszeichen („).

Weitere Informationen finden Sie unter Reservierte Schlüsselwörter in Abfragen umgehen.

Weitere Ressourcen

Die vollständige Syntax zur Datenbank- und Tabellenerstellung finden Sie auf den folgenden Seiten.

Weitere Informationen zu Datenbanken und Tabellen finden Sie AWS Glue unter Datenbanken und Tabellen im AWS Glue Entwicklerhandbuch.