【问题标题】:pgAdmin Postgresql User Input ConditionalpgAdmin Postgresql 用户输入条件
【发布时间】:2021-02-09 05:05:21
【问题描述】:

我使用 pgadmin4-postgresql 并创建了一个包含姓名、年龄和电子邮件列的表。我想为年龄列添加条件,但我不能。例如年龄间隔在 18

input =int('Age:')
if 18 < input < 90:
    print("Age value must be between interval")

如何在 postgresql 上实现这个 python 代码,请帮帮我?谢谢...

【问题讨论】:

  • 您不应该在表中存储年龄,因为人们往往每年都在变老,而且年龄值很快就会过时。改为存储 DOB。
  • 当您同桌的一位 89 岁老人年满 90 岁时,您期望会发生什么?
  • @jarlh 我同意你的观点,但是我在这里想学习的是如何在 postgresql 中实现条件,我想在示例中用年龄来解释这一点。

标签: python sql postgresql datetime check-constraints


【解决方案1】:

基本上,您是在描述 SQL 检查约束的概念。这与您的表的定义绑定:

create table mytable (
    id serial primary key,
    name text,
    email text,
    age int,
    check(age > 18 and age < 90)
)

约束确保存储到列age 的值属于给定范围;如果尝试插入违规值,则会引发错误,并拒绝该值。

请注意,存储年龄通常不是一个好习惯;从字面上看,一个时代一直在变化。存储出生日期要好得多。

【讨论】:

  • 非常感谢@GMB。
猜你喜欢
  • 2021-01-05
  • 2018-09-25
  • 2020-07-28
  • 1970-01-01
  • 2022-01-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-19
相关资源
最近更新 更多