2017-07-08 1 views
0

Ich versuche, die Spaltengröße zu ändern, bekomme aber eine Ausnahme wie unten. tatsächlich ist die Spaltengröße 64 Byte, aber es wird versucht, auf 2 Byte zu wechseln.Wert zu lange Ausnahme beim Ändern der Datentypgröße

ALTER TABLE Tabelle1 ALTER COLUMN Spalte1 Typ VARCHAR (2); Fehler: Wert zu lang für Typ Zeichen variiert (2)

Ich hatte vorhandene Daten verifiziert auch die Größe ist weniger als 2 Bytes.

Kann mir jemand helfen, das zu beheben.

Dank Ramesh

Antwort

0

Auch wenn die Datengröße weniger als 2 Bytes ist, postgre werden Sie nicht zulassen, dass das tun.

Sie müssen die Größe Ihres varchar manuell "begrenzen". Sie können dies tun, indem Sie Teilstrings Ihrer Daten machen. Natürlich, wenn Ihre Spalte bereits 2 Bytes lang ist, wird es keine Nebeneffekte geben, sonst werden die Variablen auf 2 Zeichen gekürzt.

ALTER TABLE table1 ALTER COLUMN column1 type VARCHAR(2) USING substr(column1, 1, 2) 

Beachten Sie, dass es keine Probleme geben wird, wenn Sie die Spaltengröße in eine größere ändern möchten.

+0

Vielen Dank ... –

Verwandte Themen