[Phpmyadmin-devel] RFE #919

Marc Delisle marc at infomarc.info
Fri Jul 25 16:38:14 CEST 2014


Le 2014-07-24 06:01, Ashutosh Dhundhara a écrit :
> On Thu, Jul 24, 2014 at 5:32 PM, Marc Delisle <marc at infomarc.info
> <mailto:marc at infomarc.info>> wrote:
> 
>     Le 2014-07-23 22:39, Hugues Peccatte a écrit :
>     > 2014-07-23 20:22 GMT+02:00 Ashutosh Dhundhara
>     > <ashutoshdhundhara at yahoo.com <mailto:ashutoshdhundhara at yahoo.com>
>     <mailto:ashutoshdhundhara at yahoo.com
>     <mailto:ashutoshdhundhara at yahoo.com>>>:
>     >
>     >     Hi,
>     >
>     >     This is in regards with RFE #919
>     >     <http://sourceforge.net/p/phpmyadmin/feature-requests/919/>
>     (Multiple-column
>     >     foreign key relation). I was trying to figure out the UI for
>     this by
>     >     modifying the existing one. I have attached a screenshot for
>     the same.
>     >     Please comment.
>     >
>     >     --
>     >     Ashutosh Dhundhara
>     >
>     >
>     > Hi,
>     >
>     > This is nice.
>     > IMO the constraint name should be displayed as a title, and not
>     > displayed in the bottom-right corner, so you will see it easily.
>     > Maybe, you can reduce table rows height, by displaying the ON
>     UPDATE and
>     > DELETE on the same line.
>     >
>     > Hugues.
> 
>     Hi Ashutosh,
>     somehow I missed your initial email but saw the screenshot in the
>     archives.
> 
>     The UI you are proposing does not work, in my opinion. On the left side,
>     you are proposing multiple columns, but the feature request is about
>     having, on the left side, one column, and on the foreign key constraint
>     side (right), multiple columns.
> 
> 
> Hi Marc,
> 
> can you please quote an example of this case?
> 
> Are you talking about a case like this: 
> 
> Lets say I have two tables `table_1` and `table_2` with two columns `id`
> and `value`. 
> The query:
> ALTER TABLE `table_2` ADD FOREIGN KEY (`id`) REFERENCES `table_1` (`id`,
> `value`);

Hi Ashutosh,
yes, I was thinking about a case like this but I reverified in
http://dev.mysql.com/doc/refman/5.5/en/create-table-foreign-keys.html
and it does not look to be possible.

So your UI is correct, in general, except that I suggest that instead of
numbering the relations (1, 2), you just use some visual divider like a
horizontal line. Numbering would introduce a doubt about the order of
the foreign keys, which does not exist (each FK is independent from the
others).

I have a few questions about your screenshot:

- Does it represent the case when a user is trying to add constraints to
table_2 ?

- Why did the user match table_1.value for the id column, and table_1.id
for the value column? Taking the MySQL manual as an example, it's much
easier to understand this:

FOREIGN KEY (product_category, product_id)
      REFERENCES product(category, id)

-- 
Marc Delisle | phpMyAdmin




More information about the Developers mailing list