我正在try 对现有列施加判断约束.

有没有办法通过PostgreSQL实现这一点?

推荐答案

使用alter table添加新约束:

alter table foo 
   add constraint check_positive check (the_column > 0);

More details and examples are in the manual:
http://www.postgresql.org/docs/current/static/sql-altertable.html#AEN70043

Edit

判断特定值的方式与使用IN运算符的方式相同:

alter table foo 
   add constraint check_positive check (some_code in ('A','B'));

Database相关问答推荐

我们可以在 CnosDB 中的单个数据库中创建的标签数量是否有限制?

无法向 SiriDB 添加新副本

数据库设计 - 类别(categories)和子类别(sub-categories)

如何使用错误消息中指定的 tbspaceid tableid 在 DB2 中查找表和列

Java中基于文件的数据库

如何在 SQL Server 中生成随机数据?

MySQL 中的多个 OR 子句

是否应该强制执行参照完整性?

我如何知道何时索引列以及使用什么索引?

在哪里可以找到 neo4j 快速教程?

如何配置 NLog 以写入数据库?

为什么用 varbinary 而不是 varchar

SQL 查询 - 如何按 null 或不为 null 进行过滤

使用批处理文件执行一组 SQL 查询?

最佳用户角色权限数据库设计实践?

SQLite3 UNIQUE 约束失败错误

如何在 SQL Server 中创建数据库的别名

从数据库中获取事件

分离实体和被管理实体

查询以查找列的 nᵗʰ 最大值