CREATE CONVERSION

Name

CREATE CONVERSION -- definiert eine neue Zeichensatzkonversion

Synopsis

CREATE [DEFAULT] CONVERSION konversionsname
    FOR quellkodierung TO zielkodierung FROM funktionsname

Beschreibung

CREATE CONVERSION definiert eine neue Zeichensatzkonversion, das heißt eine Umwandlung von einer Zeichensatzkodierung in eine andere. Konversionsnamen können in der Funktion convert verwendet werden. Eine Konversion, die als DEFAULT markiert wurde, kann auch für die automatische Zeichensatzumwandlung zwischen Client und Server verwendet werden. Dazu müssen zwei Konversionen definiert werden, eine von Kodierung A nach B und eine von Kodierung B nach A.

Um eine Konversion erzeugen zu können, müssen Sie das Privileg EXECUTE für die Funktion und das Privileg CREATE für das Zielschema haben.

Parameter

DEFAULT

Die DEFAULT-Klausel gibt an, dass diese Konversion die Standardkonversion für dieses Kodierungspaar ist. Es sollte in jedem Schema nur eine Standardkonversion pro Kodierungspaar geben.

konversionsname

Der Name der Konversion. Der Konversionsname kann eine Schemaqualifikation haben. Wenn nicht, dann wird die Konversion im aktuellen Schema definiert. Der Konversionsname muss im Schema einmalig sein.

quellkodierung

Der Name der Quellkodierung.

zielkodierung

Der Name der Zielkodierung.

funktionsname

Die Funktion, die die Konversion durchführen soll. Der Funktionsname kann eine Schemaqualifikation haben. Wenn nicht, dann wird die Funktion im Pfad gesucht werden.

Die Funktion muss folgende Signatur haben:

funktion(
    integer,  -- Quellkodierungsnummer
    integer,  -- Zielkodierungsnummer
    cstring,  -- Quellzeichenkette (C-Zeichenkette mit Null-Byte am Ende)
    cstring,  -- Zielzeichenkette (C-Zeichenkette mit Null-Byte am Ende)
    integer   -- Länge der Quellzeichenkette
) RETURNS void;

Meldungen

CREATE CONVERSION

Meldung, wenn die Konversion erfolgreich erzeugt wurde.

Beispiele

Um eine Konversion von der Kodierung UNICODE in LATIN1 zu definieren, die durch die Funktion meine_funktion durchgeführt wird:

CREATE CONVERSION meine_konv FOR 'UNICODE' TO 'LATIN1' FROM meine_funktion;

Kompatibilität

Der Befehl CREATE CONVERSION ist eine PostgreSQL-Erweiterung.

Siehe Auch

CREATE FUNCTION, DROP CONVERSION