2017-07-08 82 views
0

Iam嘗試更改列大小,但獲得如下所示的異常。實際上列大小是64字節,但嘗試更改爲2個字節。更改數據類型大小時值太長異常

ALTER TABLE table1 ALTER COLUMN column1 type VARCHAR(2); (2)

我已驗證現有數據也大小小於2個字節。

任何人都可以幫助我解決這個問題。

感謝 拉梅什

回答

0

即使數據大小小於2個字節,postgre不會允許你這樣做。

您必須手動'限制'varchar的大小。你可以通過做你的數據的子串來做到這一點。當然,如果你的列已經有2個字節長,那麼不會有任何副作用,否則它會將變量修剪爲2個字符。

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

請注意,如果您想將列大小更改爲更大的列,則根本沒有問題。

+0

非常感謝你...... –