1、清除所有表:
http://bbs.youkuaiyun.com/topics/390209463第2楼:
CREATE FUNCTION aaa() RETURNS void AS $$
DECLARE
tmp VARCHAR(512);
DECLARE names CURSOR FOR
select tablename from pg_tables where schemaname='public';
BEGIN
FOR stmt IN names LOOP
tmp := 'DROP TABLE '|| quote_ident(stmt.tablename) || ' CASCADE;';
RAISE NOTICE 'notice: %', tmp;
EXECUTE 'DROP TABLE '|| quote_ident(stmt.tablename) || ' CASCADE;';
END LOOP;
RAISE NOTICE 'finished .....';
END;
$$ LANGUAGE plpgsql;
select aaa();
2、所有表中数据:
我的土方法是先备份,备份的时候就不要选备份数据啦,这样恢复的时候就可以了。
如果有好方法,欢迎指教丫~
然后对于单独的表,可以采用TRUNCATE TABLE name这样的方法。
最近用了个工具 navicat premium,在导入导出数据的时候真的很好用啊~
本文介绍了一种在PostgreSQL数据库中批量删除所有表的方法,通过创建并使用自定义函数实现这一目标。此外,还讨论了备份表结构而不包含数据的方法,并推荐了一个实用的数据管理工具Navicat Premium。
398

被折叠的 条评论
为什么被折叠?



