【问题标题】:Can I set (within the dbase) a size limit on a bytea field in PostgreSQL?我可以(在 dbase 中)对 PostgreSQL 中的 bytea 字段设置大小限制吗?
【发布时间】:2016-02-21 14:01:59
【问题描述】:

我在 PostgreSQL 数据库中有很多 bytea 字段。

(i) 有没有办法通过使用数据库功能对此类字段施加大小上限(以便在尝试超过此大小时引发错误)?

(ii) 或者,在 SQLAlchemy 中是否有很好的方法来做到这一点?

【问题讨论】:

    标签: postgresql sqlalchemy


    【解决方案1】:

    您可以使用域(在 PostgreSQL 大小上)。

    CREATE DOMAIN my_bytea_8 AS bytea CHECK(length(value) <= 8);
    
    postgres=# SELECT 'NAZDARBAZAR'::my_bytea_8;
    ERROR:  23514: value for domain my_bytea_8 violates check constraint "my_bytea_8_check"
    SCHEMA NAME:  public
    DATATYPE NAME:  my_bytea_8
    CONSTRAINT NAME:  my_bytea_8_check
    LOCATION:  ExecEvalCoerceToDomain, execQual.c:4042
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-13
    • 2016-04-16
    • 1970-01-01
    • 2014-01-16
    • 1970-01-01
    • 1970-01-01
    • 2011-09-27
    相关资源
    最近更新 更多