在ER模型中,域是属性的一组值(即,实体的属性或特征)。值集符合域的通用定义(例如,类型,格式,语法,含义)。 我的问题是:域是否像数据库中的检查约束?
答案 0 :(得分:0)
域以及定义一组允许值,还定义了可以对这些值执行的操作。例如,您可以定义逻辑域
对于 EMPLOYEE_NUMBERS 域,加法和减法的数学运算没有意义,因此没有为域定义。但是,对于 NUMBER_OF_DAYS 域,这些数学运算确实有意义且已定义。
当在物理(SQL)DBMS上实现逻辑域时,除了基本数据类型定义之外,还可以使用检查约束。但是,这仅限制列中允许的值,而不是可以执行的操作。因此,您可以使用检查约束来定义列:
虽然这限制了可以以相同方式存储在这些列中的值,但它不会阻止您对所有 EMP_NO 进行求和,尽管获得的答案没有意义。然而, NO_OF_DAYS 的总和可能会产生合法的结果。