+ -
当前位置:首页 → 问答吧 → postgre 删除表问题

postgre 删除表问题

时间:2011-06-22

来源:互联网

创建一张表为pb_print,使用了primary key,之后只使用它去创建了VIEW。

问题:

我已经删除了VIEW,但使用无法删除primary key 和表,以下为我的语句:
alter table pb_print drop constraint pb_print_pkey;
drop table pb_print;

请问各位如何才能删除这张表呢?

谢谢!

作者: know_no   发布时间: 2011-06-22

是Postgresql?什么版本,提示什么,建表语句是什么,直接删除不行?

作者: wwwwb   发布时间: 2011-06-22

直接 drop 就应该可以了,是不是有外键参照了? 错误信息是什么?

作者: ACMAIN_CHM   发布时间: 2011-06-22

此表与其它表建立了关系?

作者: wwwwb   发布时间: 2011-06-22

根据一个表名,查询所有外键引用它的表,以及那些外键的列名 
key_column_usage(系统列信息表), 
pg_constraint(系统所有约束表) 


SELECT x.table_name,  
  x.column_name  
  FROM information_schema.key_column_usage x  
  INNER JOIN (SELECT t.relname,  
  a.conname  
  FROM pg_constraint a  
  INNER JOIN pg_class ft  
  ON ft.oid = a.confrelid  
  INNER JOIN pg_class t  
  ON t.oid = a.conrelid  
  WHERE a.contype = 'f'  
  AND a.confrelid =  
  (select e.oid  
  from pg_class e  
  where e.relname = 'xxx_table')  
  ) tp  
  ON (x.table_name = tp.relname AND  
  x.constraint_name = tp.conname)

作者: wwwwb   发布时间: 2011-06-22

谢谢各位!

没有任何提示信息,就是一直在执行中.

postgre的版本是8.3

作者: know_no   发布时间: 2011-06-22

直接在POSTGRESQL命令行下删除此表,有无提示

作者: wwwwb   发布时间: 2011-06-22

是不是还有其它连接在使用这张表? 导致表仍被其它进程读中?

作者: ACMAIN_CHM   发布时间: 2011-06-22

有其它用户在使用此表?

作者: wwwwb   发布时间: 2011-06-22

drop view
drop table

作者: rucypli   发布时间: 2011-06-22

相关阅读 更多

热门下载

更多