Der VARCHAR-Datentyp speichert Zeichen von bis zu 32.767 Byte.
VARCHAR [ ( Maximallänge [ CHAR | CHARACTER ] ) ]
Maximallänge Die Maximallänge der Zeichenfolge. Wenn Bytelänge-Semantik verwendet wird (CHAR oder CHARACTER wird nicht als Teil der Länge angegeben), ist die Länge in Bytes, und sie muss im Bereich von 1 bis 32.767 liegen. Wenn keine Länge angegeben ist, ist ihr Wert "1".
Wenn Zeichenlänge-Semantik verwendet wird (CHAR oder CHARACTER wird als Teil der Länge angegeben), ist die Länge in Zeichen, und Sie müssen eine Maximallänge angeben. Wenn Sie Zeichenlänge-Semantik verwenden, darf die Länge, multipliziert mit der Maximallänge eines Zeichens in der Datenbankkodierung, nicht 32.767 Byte überschreiten. Die folgende Tabelle enthält die Maximallängen für die unterstützten Zeichensatztypen:
Zeichensatz | Maximallänge von VARCHAR |
---|---|
Einbyte-Zeichensatz | 32767 Zeichen |
Doppelbyte-Zeichensatz | 16383 Zeichen |
UTF-8 | 8191 Zeichen |
Mehrbyte-Zeichensätze können als VARCHAR gespeichert werden, aber die angegebene Länge bezieht sich auf Bytes, nicht auf Zeichen.
VARCHAR kann auch als CHAR VARYING oder CHARACTER VARYING angegeben werden. Unabhängig von der verwendeten Syntax wird der Datentyp als VARCHAR beschrieben.
Abhängig von der verwendeten Schnittstelle kann sich eine Verwendung der Zeichenlänge-Semantik auf die Rückgabe auswirken, wenn ein Client eine DESCRIBE-Anweisung für eine Spalte ausführt. Beispiel: Wenn eine Embedded SQL-Clientanwendung eine DESCRIBE-Anweisung bei einer Spalte ausführt, die mithilfe von Bytelänge-Semantik deklariert wurde, entspricht die zurückgegebene Länge der angegebenen Bytelänge. Daher wird eine VARCHAR(10)-Spalte als Typ DT_VARCHAR mit einer Länge von 10 Byte beschrieben. Wenn jedoch eine Embedded SQL-Clientanwendung eine DESCRIBE-Anweisung für eine Spalte ausführt, die mithilfe von Zeichenlänge-Semantik deklariert wurde, ist die zurückgegebene Länge die maximale Bytelänge im CHAR-Zeichensatz des Clients. Beispiel: Bei einem Client, der UTF-8 als den CHAR-Zeichensatz verwendet, wird eine VARCHAR(10 CHAR)-Spalte als Typ DT_VARCHAR mit einer Länge von 40 Byte (10 Zeichen multipliziert mit einem Maximum von vier Bytes pro Zeichen) beschrieben.
SQL/2003 Kompatibel mit SQL/2003. Zeichenlänge-Semantik ist eine Erweiterung des Herstellers.
Kommentieren Sie diese Seite in DocCommentXchange. Senden Sie uns Feedback über diese Seite via E-Mail. |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |