Re: 5.3.5. Foreign Keys (The SQL Language) possible enhance
От | Bruce Momjian |
---|---|
Тема | Re: 5.3.5. Foreign Keys (The SQL Language) possible enhance |
Дата | |
Msg-id | 201110122059.p9CKx4K06548@momjian.us обсуждение исходный текст |
Ответ на | Re: 5.3.5. Foreign Keys (The SQL Language) possible enhance (Robert Haas <robertmhaas@gmail.com>) |
Список | pgsql-docs |
Robert Haas wrote: > On Fri, May 6, 2011 at 9:50 PM, Grzegorz Szpetkowski > <gszpetkowski@gmail.com> wrote: > > I have some remark about > > > > "Now it is impossible to create orders with product_no entries that do > > not appear in the products table." > > > > http://www.postgresql.org/docs/9.0/static/ddl-constraints.html#DDL-CONSTRAINTS-FK > [...] > > > > There is still possibility to add product_no (exactly NULL) value, > > which does not appear (cannot because of primary key nature) in > > products table. To get "full solution" you need create orders table as > > > > CREATE TABLE orders ( > > ? ?order_id integer PRIMARY KEY, > > ? ?product_no integer REFERENCES products (product_no) NOT NULL, > > ? ?quantity integer > > ); > > I don't think we should change the example, but we could probably > clarify the wording. Done with the attached patch. -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + It's impossible for everything to be true. + diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml new file mode 100644 index c624fc2..ea840fb *** a/doc/src/sgml/ddl.sgml --- b/doc/src/sgml/ddl.sgml *************** CREATE TABLE orders ( *** 688,694 **** quantity integer ); </programlisting> ! Now it is impossible to create orders with <structfield>product_no</structfield> entries that do not appear in the products table. </para> --- 688,694 ---- quantity integer ); </programlisting> ! Now it is impossible to create orders with non-NULL <structfield>product_no</structfield> entries that do not appear in the products table. </para>
В списке pgsql-docs по дате отправления: