1.
DROP TABLE products;
NOTICE: constraint orders_product_no_fkey on table orders depends on table products
ERROR: Cannot drop table products because other objects depend on it
Use DROP ... CASCADE to drop the dependent objects too
这个错误信息包含一个有用的提示:如果你不想惹来分别删除所有依赖对象的麻烦,你可以运行
DROP TABLE products CASCADE
2.
PostgreSQL 为给它的每个查询产生一个查询规划。为匹配查询结构和数据属性选择正确的规划对性能绝对有关键性的影响。因此系统包含了一个复杂的规划器用于寻找最优的规 划。你可以使用 EXPLAIN 命令察看规划器为每个查询生成的查询规划是什么。阅读查询规划是一门值得写一个相当长的教程的学问,而我这份文档可不是这样的教程,但是这里有一些基本的 信息。
查询规划的结构是一个规划节点的树。最底层的节点是表扫描节点:它们从表中返回原始数据行。不同的表访问模式有不同的扫描节点类型:顺序 扫描,索引扫描,以及位图索引扫描。如果查询需要连接,聚集,排序,或者是对原始行的其它操作,那么就会在扫描节点"之上"有其它额外的节点。并且,做这 些操作通常都有多种方法,因此在这些位置也有可能出现不同的节点类型。EXPLAIN 的输出给规划树里面的每个节点都有一行输出,显示基本的节点类型和规划器为执行这个规划节点计算出来的预计的开销值。第一行(最上层的节点)是对该规划的 总的执行开销的预计;这个数值就是规划器试图最小化的数值。
EXPLAIN SELECT * FROM tenk1;
更改postgresql数据库名字
update pg_database set datname = 'newName' where datname = 'oldName';