Обсуждение: Removing constraints
There is a constraint on my database that was created as part of a foreign key. When I dropped the foreign key index, the constraint still remained behind. How can I delete this constraint? It is unnamed and I figure I need to remove some stuff from the system tables, but I don't know which ones or what to delete. I'm using PostgreSQL v7.0.2. I looked through the user guides, but couldn't find this info there. --------------------------------------------- Nathan Barnett
You should be able remove the fk constraint by dropping the three associated triggers in pg_trigger. You can find the correct ones by look at the tgargs column if you didn't name the constraint. Stephan Szabo sszabo@bigpanda.com On Mon, 13 Nov 2000, Nathan Barnett wrote: > There is a constraint on my database that was created as part of a foreign > key. When I dropped the foreign key index, the constraint still remained > behind. How can I delete this constraint? It is unnamed and I figure I > need to remove some stuff from the system tables, but I don't know which > ones or what to delete. I'm using PostgreSQL v7.0.2. I looked through the > user guides, but couldn't find this info there.
Stephan, Thanks for the initial help. I followed your instructions, but now I'm getting an error: "ERROR: RelationBuildTriggers: 2 record(s) not found for rel nametable". Where else would these triggers be referenced. --------------------------------------------- Nathan Barnett -----Original Message----- From: pgsql-general-owner@postgresql.org [mailto:pgsql-general-owner@postgresql.org]On Behalf Of Stephan Szabo Sent: Monday, November 13, 2000 11:47 AM To: Nathan Barnett Cc: pgsql-general@postgresql.org Subject: Re: [GENERAL] Removing constraints You should be able remove the fk constraint by dropping the three associated triggers in pg_trigger. You can find the correct ones by look at the tgargs column if you didn't name the constraint. Stephan Szabo sszabo@bigpanda.com On Mon, 13 Nov 2000, Nathan Barnett wrote: > There is a constraint on my database that was created as part of a foreign > key. When I dropped the foreign key index, the constraint still remained > behind. How can I delete this constraint? It is unnamed and I figure I > need to remove some stuff from the system tables, but I don't know which > ones or what to delete. I'm using PostgreSQL v7.0.2. I looked through the > user guides, but couldn't find this info there.
"Nathan Barnett" <nbarnett@cellularphones.com> writes: > Thanks for the initial help. I followed your instructions, but now I'm > getting an error: "ERROR: RelationBuildTriggers: 2 record(s) not found for > rel nametable". Where else would these triggers be referenced. If you manually add/delete triggers for a relation, you have to also manually update the trigger count field in its entry in pg_class. regards, tom lane