information_schema.columns 怎么varchar类型长度都是null?
在阿里云云原生数据仓库AnalyticDB中,information_schema.columns 中关于 varchar 类型列长度返回 null 的原因是因为该类型列的长度限制不会被预定义,而是会根据实际数据存储来动态计算。
在 AnalyticDB 中,varchar 类型的字符串是根据实际存储需求动态计算长度的,因为 varchar 类型是可变长度数据类型。在创建表时,如果未指定 varchar 类型列的长度,则长度被视为NULL,而可变长度的数据在存储时不需要为每个数据项预留相同的存储空间,所以 varchar 类型的长度值会被视为 NULL。
如果你想要获取具体的 varchar 类型长度信息,可以通过使用 SHOW CREATE TABLE 命令查看该表的创建语句,其中的 varchar 类型长度信息将会被显示出来。
另外,需要注意的是,information_schema 列信息可能存在延迟,因为它需要通过扫描分布式存储的元数据来获取信息,并且元数据需要分布在整个集群中,因此会存在一定的延迟。如果你在进行DDL操作后需要立即获取最新的 metadata,可以通过执行 ANALYZE TABLE 命令来更新元数据。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云自主研发的云原生数据仓库,具有高并发读写、低峰谷读写、弹性扩展、安全可靠等特性,可支持PB级别数据存储,可广泛应用于BI、机器学习、实时分析、数据挖掘等场景。包含AnalyticDB MySQL版、AnalyticDB PostgreSQL 版。