我是postgresql的新手,有没有人能告诉我,在pgadmin中创建表时是否有特定的数据类型可用于存储电话号码,还是只能使用字符串?
我是postgresql的新手,有没有人能告诉我,在pgadmin中创建表时是否有特定的数据类型可用于存储电话号码,还是只能使用字符串?
我建议使用text
并添加一个检查约束条件,测试电话号码的有效性。
这是域(domain)的一个良好应用案例。特别是如果你需要在多个地方使用这样的列,拥有一个包含检查约束条件的域将是很方便的。
CREATE DOMAIN iol.phone_number AS TEXT CHECK( VALUE ~ '^(\+\d{1,2}\s)?\(?\d{3}\)?[\s.-]?\d{3}[\s.-]?\d{4}$' );
- Neil Gaetano LindbergCREATE DOMAIN iol.phone_number AS VARCHAR(10) CHECK(VALUE ~ '^[0-9]{10}$');
。 - Y Yphone.sql
用于验证国际E.164
格式的电话号码。phone_parse.sql
用于将电话号码解析为3个部分:country_code
,area_code
和local_number
。
char
(https://wiki.postgresql.org/wiki/Don't_Do_This#Don.27t_use_char.28n.29)пјҢдҪҝз”Ё`text`жҲ–`character varying`гҖӮиҜ·жіЁж„ҸпјҢзҝ»иҜ‘з»“жһңе·Із»Ҹиў«ж¶ҰиүІе№¶дҪҝе…¶жӣҙеҠ жҳ“жҮӮпјҢдҪҶжІЎжңүж”№еҸҳеҺҹе§ӢдҝЎжҒҜгҖӮ - user330315