Re: Properties of 'Relationships' in FK definiton.
От | Dave Page |
---|---|
Тема | Re: Properties of 'Relationships' in FK definiton. |
Дата | |
Msg-id | FED2B709E3270E4B903EB0175A49BCB1047378@dogbert.vale-housing.co.uk обсуждение исходный текст |
Ответ на | Properties of 'Relationships' in FK definiton. (Anil Jangam <anilj@indts.com>) |
Список | pgsql-cygwin |
> -----Original Message----- > From: Anil Jangam [mailto:anilj@indts.com] > Sent: 14 December 2001 12:33 > To: 'Dave Page'; 'pgsql-cygwin@postgresql.org' > Subject: Properties of 'Relationships' in FK definiton. > Importance: High > > > Hi Dave, > > After defining the FK relationship in one of the tables, the > pgAdmin generates the view as follows. > > Foreign Keys [2] > - PrimaryCompID -> FunctionEntityInventory > - Relationships[1] > - SecondaryCompID -> FunctionEntityInventory > - Relationships[1] > > Here as shown, the 'PrimaryCompID' is a FK in table > 'FunctionEntityInventory' and so the 'SecondaryCompID'. > > When I click on the 'PrimaryCompID' and 'SecondaryCompID', it > shows the properties on the RHS (right hand side). But when I > try to see the properties of 'Relationships' it gives the > following error. > > An error has occured in pgAdminII:frmMain.tvNodeClick: > Number: 5 > Description: Invalid procedure call or argument. > > What is the meaning of this??? What version if pgAdmin are you running - I can't seem to reproduce this? > I have defined while creating the FK and its relationships > correctly. But couldn't understand the meaning of > 'deferrable' key word. Also in the properties of the FK, it > shows some options: > > deferrable: No (I didn't checked this while creating the r'ship) > Initally: Immidiate (What is the meaning and use > of this??? > There were two things to select here.. > (immidiate, > and deferred). From the CREATE TABLE page in the PostgreSQL reference manual (available under Help -> Contents in newer versions of pgAdmin): DEFERRABLE or NOT DEFERRABLE This controls whether the constraint can be deferred. A constraint that is not deferrable will be checked immediately after every command. Checking of constraints that are deferrable may be postponed until the end of the transaction (using the SET CONSTRAINTS command). NOT DEFERRABLE is the default. Only foreign key constraints currently accept this clause. All other constraint types are not deferrable. INITIALLY IMMEDIATE or INITIALLY DEFERRED If a constraint is deferrable, this clause specifies the default time to check the constraint. If the constraint is INITIALLY IMMEDIATE, it is checked after each statement. This is the default. If the constraint is INITIALLY DEFERRED, it is checked only at the end of the transaction. The constraint check time can be altered with the SET CONSTRAINTS command. > System FK: NO. (What is the system FK??) pgAdmin has a concept of System Objects, that is, objects that were not created explicitly by the user. In the case of Foreign Keys, you probably will not see any with current PostgreSQL releases, but (for example) the table pg_class would be marked as a system table, as would an index that was automatically created when a column in a new table was defined as a Primary Key. By default, all system objects are hidden - you can toggle the option on the View menu to change this behaviour. Regards, Dave.
В списке pgsql-cygwin по дате отправления: