Vorbereiten der Eingabedaten - Amazon Redshift

Amazon Redshift unterstützt ab dem 1. November 2025 nicht mehr die Erstellung neuer Python-UDFs. Wenn Sie Python-UDFs verwenden möchten, erstellen Sie die UDFs vor diesem Datum. Bestehende Python-UDFs funktionieren weiterhin wie gewohnt. Weitere Informationen finden Sie im Blog-Posting.

Vorbereiten der Eingabedaten

Wenn die Eingabedaten nicht mit den Tabellenspalten kompatibel sind, die diese erhalten, wird der COPY-Befehl fehlschlagen.

Wenden Sie die folgenden Richtlinien an, um sicherzustellen, dass die Eingabedaten gültig sind:

  • Die Daten dürfen nur UTF-8-Zeichen mit höchstens vier Bytes enthalten.

  • Überprüfen Sie, ob CHAR- und VARCHAR-Zeichenfolgen die Länge der entsprechenden Spalten nicht überschreiten. VARCHAR-Zeichenfolgen werden in Bytes und nicht in Zeichen gemessen. Daher erfordert eine Zeichenfolge mit vier chinesischen Zeichen, die jeweils vier Bytes enthalten, eine VARCHAR(16)-Spalte.

  • Multibyte-Zeichen können nur mit VARCHAR-Spalten verwendet werden. Überprüfen Sie, ob Multibyte-Zeichen nicht mehr als vier Bytes enthalten.

  • Überprüfen Sie, ob Daten für CHAR-Spalten nur Einzelbyte-Zeichen enthalten.

  • Verwenden Sie keine Sonderzeichen oder eine spezielle Syntax, um das letzte Feld in einem Datensatz anzuzeigen. Dieses Feld kann ein Trennzeichen sein.

  • Wenn Ihre Daten Null-Terminatoren enthalten, auch als NUL (UTF-8 0000) oder Binär-Null (0x000) bezeichnet, können Sie diese Zeichen als NULL-Werte in CHAR- oder VARCHAR-Spalten laden, indem Sie die Option NULL AS im COPY-Befehl verwenden: null as '\0' oder null as '\000'. Wenn Sie NULL AS nicht verwenden, schlägt COPY fehl, wenn Null-Terminatoren vorhanden sind.

  • Wenn Ihre Zeichenfolgen Sonderzeichen wie Trennzeichen und eingebettete neue Zeilen enthalten, verwenden Sie die ESCAPE-Option des COPY-Befehls.

  • Überprüfen Sie, ob alle einfachen und doppelten Anführungszeichen korrekt übereinstimmen.

  • Überprüfen Sie, ob Gleitkomma-Zeichenfolgen das Gleitkomma-Standardformat, beispielsweise 12.123, oder ein exponentielles Format, beispielsweise 1.0E4, aufweisen.

  • Überprüfen Sie, ob alle Zeitstempel- und Datumszeichenfolgen die Spezifikationen für befolgen DATEFORMAT- und TIMEFORMAT-Zeichenfolgen. Das Standardzeitstempelformat ist JJJJ-MM-TT hh:mm:ss. Das Standarddatumsformat ist JJJJ-MM-TT.

  • Weitere Informationen zu Grenzen und Einschränkungen für einzelne Datentypen finden Sie unter Datentypen. Weitere Informationen zu Fehlern für Multibyte-Zeichen finden Sie unter . Fehler beim Laden von Multibyte-Zeichen