我有一個包含 2 列的表,請求使用 NOT NULL 約束,如下所示
| Col1 | Col2 |
|---|---|
| val1 | VAL2 |
| VAL3 | Val4 |
我正在嘗試添加一個名為“Col3”的新列
ALTER TABLE table
ADD COLUMN Col3 INTEGER NOT null
但它回傳一個錯誤,說“連續有 NULL 值”有什么方法可以使用它嗎?
uj5u.com熱心網友回復:
如果新行應該是,則在列定義NOT NULL中添加一個子句:DEFAULT
ALTER TABLE tab
ADD COLUMN Col3 INTEGER NOT null
DEFAULT 0;
或者,省略NOT NULL,用 填充新列UPDATE,然后將列更改為NOT NULL:
ALTER TABLE tab
ALTER col3 SET NOT NULL;
在UPDATE整張桌子上之后,你應該跑去VACUUM (FULL) tab擺脫臃腫。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/457351.html
標籤:sql 数据库 PostgreSQL 数据库管理系统 postgresql-12
上一篇:為什么結果顯示某些等級值為空
