
↓点击关注公众号↓
对Domain的理解
Postgresql中的Domain是指在定义表列时,可以定义一组具有相同性质的值,根据Domain定义的表列只能用其定义的值,将该列所需要的值集合为一个统一的值域,可以用于限制值的类型。
使用Domain的主要优点是它可以为每个列设置不同类型的限制,为每个列都创建相同的限制,同时可用于多个表的多个列,以提高可重用性,并减少编码时间。
使用Domain的缺点是它有一定的灵活性,但在建立Domain之前用户必须清楚地定义每个Domain,因此有可能造成一定程度上的冗余。
Domain的功能
数据类型封装:Domain可以将一个或多个现有的数据类型封装成一个新的数据类型。这样可以提高代码的可读性和可维护性,同时也可以减少错误的发生。
数据约束:Domain可以定义一组约束条件,用于限制数据的取值范围。例如,可以定义一个Domain来限制某个列的取值只能是特定的枚举值,或者限制某个列的取值范围在一定的数值范围内。
数据验证:Domain可以定义一组验证规则,用于验证数据的有效性。例如,可以定义一个Domain来验证某个列的值是否符合特定的正则表达式,或者验证某个列的值是否满足一定的业务逻辑。
数据转换:Domain可以定义一组转换规则,用于在存储和检索数据时进行数据转换。例如,可以定义一个Domain来将某个列的值从一种数据类型转换为另一种数据类型,或者将某个列的值进行格式化。
创建Domain
create domain s_string100 as VARCHAR(100);
删除Domain
drop domain if exists s_string100 ;
查看创建的Domain
SELECT oid, typname FROM pg_type WHERE typtype = 'd';
↓点击关注公众号↓
文章转载自IT后浪,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




