在数据库(psql)中打印列条件的python方式



在使用factory boy制作假模型时,我有一个严重的错误:

DataError: value too long for type character varying(2)

是否有一种python(或ruby)的方式来打印仅在数据库中varchar(2)类型的列的名称?我想应该是在pgadmin3元数据中吧?谢谢你

对于Postgres查询,我认为这是你正在寻找的。

SELECT column_name FROM information_schema.columns WHERE table_name='some_table' AND data_type='varchar(2)';

这只是选择特定表中的所有varchar(2)列,但是您可以删除该部分以在整个数据库中获取它们。您还可以为数据库中的某个模式添加table_schema='some_schema'

至于python或ruby的方法,我不知道一个,除了在psycopg或其他Postgres适配器中运行该查询。

关于information_schema.columns的更多信息

最新更新