Hi
This is in reference of bug[0] in current master. While I was debugging the code to fix the issue, I found that we are trying to force the column to be primary key if auto_increment has been checked. there is this comment in Table.class.php: // Force an auto_increment field to be part of the primary key // even if user did not tick the PK box;
anyone have an idea why are we doing so ?
[0] https://sourceforge.net/p/phpmyadmin/bugs/4540/
Thanks and Regards - Smita
Smita a écrit :
Hi
This is in reference of bug[0] in current master. While I was debugging the code to fix the issue, I found that we are trying to force the column to be primary key if auto_increment has been checked. there is this comment in Table.class.php: // Force an auto_increment field to be part of the primary key // even if user did not tick the PK box;
anyone have an idea why are we doing so ?
Hi Smita,
This is a misinterpretation of the doc. In [1] we see that the column must be indexed, not necessarily part of the primary key.
I have the impression that traditionally, people use the auto_increment mostly on the primary key but it's not mandatory.
[1] http://dev.mysql.com/doc/refman/5.5/en/create-table.html
On Mon, Sep 22, 2014 at 5:37 PM, Marc Delisle marc@infomarc.info wrote:
Smita a écrit :
Hi
This is in reference of bug[0] in current master. While I was debugging
the
code to fix the issue, I found that we are trying to force the column to
be
primary key if auto_increment has been checked. there is this comment in Table.class.php: // Force an auto_increment field to be part of the primary key // even if user did not tick the PK box;
anyone have an idea why are we doing so ?
Hi Smita,
This is a misinterpretation of the doc. In [1] we see that the column must be indexed, not necessarily part of the primary key.
I have the impression that traditionally, people use the auto_increment mostly on the primary key but it's not mandatory.
yeah, So I think we should not force the auto_increment to be primary key,
right? This will also fix the bug[0].
[1] http://dev.mysql.com/doc/refman/5.5/en/create-table.html
-- Marc Delisle (phpMyAdmin)
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.cl... _______________________________________________ Phpmyadmin-devel mailing list Phpmyadmin-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/phpmyadmin-devel
Smita a écrit :
On Mon, Sep 22, 2014 at 5:37 PM, Marc Delisle marc@infomarc.info wrote:
Smita a écrit :
Hi
This is in reference of bug[0] in current master. While I was debugging
the
code to fix the issue, I found that we are trying to force the column to
be
primary key if auto_increment has been checked. there is this comment in Table.class.php: // Force an auto_increment field to be part of the primary key // even if user did not tick the PK box;
anyone have an idea why are we doing so ?
Hi Smita,
This is a misinterpretation of the doc. In [1] we see that the column must be indexed, not necessarily part of the primary key.
I have the impression that traditionally, people use the auto_increment mostly on the primary key but it's not mandatory.
yeah, So I think we should not force the auto_increment to be primary key,
right? This will also fix the bug[0].
Indeed, we should not.
[1] http://dev.mysql.com/doc/refman/5.5/en/create-table.html
-- Marc Delisle (phpMyAdmin)
On Mon, Sep 22, 2014 at 5:45 PM, Smita kumarismita62@gmail.com wrote:
On Mon, Sep 22, 2014 at 5:37 PM, Marc Delisle marc@infomarc.info wrote:
Smita a écrit :
Hi
This is in reference of bug[0] in current master. While I was debugging
the
code to fix the issue, I found that we are trying to force the column
to be
primary key if auto_increment has been checked. there is this comment in Table.class.php: // Force an auto_increment field to be part of the primary key // even if user did not tick the PK box;
anyone have an idea why are we doing so ?
Hi Smita,
This is a misinterpretation of the doc. In [1] we see that the column must be indexed, not necessarily part of the primary key.
I have the impression that traditionally, people use the auto_increment mostly on the primary key but it's not mandatory.
yeah, So I think we should not force the auto_increment to be primary
key, right? This will also fix the bug[0].
My mistake, I also misunderstood. We are supposed to force some index.
So thing is We can't create a table unless auto_increment column is part of any index. So what do we do to meet this constraint on Create Table interface ? I suggest, what if when user checks the auto_increment we show a dialog saying it must be indexed, click to add an Index ?
[1] http://dev.mysql.com/doc/refman/5.5/en/create-table.html
-- Marc Delisle (phpMyAdmin)
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.cl... _______________________________________________ Phpmyadmin-devel mailing list Phpmyadmin-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/phpmyadmin-devel
Smita a écrit :
On Mon, Sep 22, 2014 at 5:45 PM, Smita kumarismita62@gmail.com wrote:
On Mon, Sep 22, 2014 at 5:37 PM, Marc Delisle marc@infomarc.info wrote:
Smita a écrit :
Hi
This is in reference of bug[0] in current master. While I was debugging
the
code to fix the issue, I found that we are trying to force the column
to be
primary key if auto_increment has been checked. there is this comment in Table.class.php: // Force an auto_increment field to be part of the primary key // even if user did not tick the PK box;
anyone have an idea why are we doing so ?
Hi Smita,
This is a misinterpretation of the doc. In [1] we see that the column must be indexed, not necessarily part of the primary key.
I have the impression that traditionally, people use the auto_increment mostly on the primary key but it's not mandatory.
yeah, So I think we should not force the auto_increment to be primary
key, right? This will also fix the bug[0].
My mistake, I also misunderstood. We are supposed to force some index.
So thing is We can't create a table unless auto_increment column is part of any index. So what do we do to meet this constraint on Create Table interface ? I suggest, what if when user checks the auto_increment we show a dialog saying it must be indexed, click to add an Index ?
Remember that checking auto_increment can be done: - when creating a table - when adding a column - when changing a column
So we must avoid annoying the user in case the column is already indexed or in case she chose to index it.