Postgresql 使列可为null会锁定表以进行读取吗?
我想使数据库中的一个字段为空Postgresql 使列可为null会锁定表以进行读取吗?,postgresql,Postgresql,我想使数据库中的一个字段为空 ALTER TABLE answers ALTER COLUMN author_id DROP NOT NULL; 问题是数据库中有很多数据,我不确定alter命令是否会阻止表进行写操作 我知道更改列的大小或类型将导致行独占锁定 alter I是否也会锁定表以进行写入操作,还是可以安全使用?是的,alter将需要对表进行独占锁定(包括阻止对表的写入访问) 但是,锁的持续时间非常短,并且不取决于表的大小。它本质上只是对内部系统表的更新
ALTER TABLE answers ALTER COLUMN author_id DROP NOT NULL;
问题是数据库中有很多数据,我不确定alter命令是否会阻止表进行写操作
我知道更改列的大小或类型将导致行独占锁定
alter I是否也会锁定表以进行写入操作,还是可以安全使用?是的,alter将需要对表进行独占锁定(包括阻止对表的写入访问) 但是,锁的持续时间非常短,并且不取决于表的大小。它本质上只是对内部系统表的更新