每次触发单元测试时,我都需要从所有表中删除所有数据。现在我正在使用
TRUNCATE TABLE "table_name" CASCADE
测试套件中包含的每个表。
问题是这些查询需要很长时间——大约 9-11 秒!
我希望能够TRUNCATE...CASCADE
只用TRUNCATE
语句替换那些,但要做到这一点,我需要一个按主-详细(父-子)关系排序的表列表(子优先)。手动我可以创建这样一个列表一次或两次,但数据库每天都在变化。有没有办法按该顺序生成表列表?
我正在使用 Postgresql。