|
22 | 22 | *
|
23 | 23 | *
|
24 | 24 | * IDENTIFICATION
|
25 |
| - * $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.143 2000/02/04 18:49:34 wieck Exp $ |
| 25 | + * $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.144 2000/02/07 16:30:58 wieck Exp $ |
26 | 26 | *
|
27 | 27 | * Modifications - 6/10/96 - dave@bensoft.com - version 1.13.dhb
|
28 | 28 | *
|
@@ -809,9 +809,21 @@ main(int argc, char **argv)
|
809 | 809 | else
|
810 | 810 | tblinfo=dumpSchema(NULL,&numTables,tablename,aclsSkip);
|
811 | 811 |
|
812 |
| -if (!schemaOnly) |
| 812 | +if (!schemaOnly) { |
| 813 | +if (dataOnly) |
| 814 | +fprintf(g_fout,"UPDATE \"pg_class\" SET \"reltriggers\" = 0 WHERE \"relname\" !~ '^pg_';\n"); |
| 815 | + |
813 | 816 | dumpClasses(tblinfo,numTables,g_fout,tablename,oids);
|
814 | 817 |
|
| 818 | +if (dataOnly) { |
| 819 | +fprintf(g_fout,"BEGIN TRANSACTION;\n"); |
| 820 | +fprintf(g_fout,"CREATE TEMP TABLE \"tr\" (\"tmp_relname\" name, \"tmp_reltriggers\" smallint);\n"); |
| 821 | +fprintf(g_fout,"INSERT INTO \"tr\" SELECT C.\"relname\", count(T.\"oid\") FROM \"pg_class\" C, \"pg_trigger\" T WHERE C.\"oid\" = T.\"tgrelid\" AND C.\"relname\" !~ '^pg_' GROUP BY 1;\n"); |
| 822 | +fprintf(g_fout,"UPDATE \"pg_class\" SET \"reltriggers\" = TMP.\"tmp_reltriggers\" FROM \"tr\" TMP WHERE \"pg_class\".\"relname\" = TMP.\"tmp_relname\";\n"); |
| 823 | +fprintf(g_fout,"COMMIT TRANSACTION;\n"); |
| 824 | +} |
| 825 | +} |
| 826 | + |
815 | 827 | if (!dataOnly)/* dump indexes and triggers at the end
|
816 | 828 | * for performance */
|
817 | 829 | {
|
|