phpMyAdmin foreign key drop-down field values

2020-07-03 07:52发布

I'm using phpmyadmin (php & mysql) and I'm having a lot of trouble linking the tables using foreign keys.

I'm getting negative values for the field countyId (which is the foreign key). However it is linking to my other table fine and it's cascading fine.

When I go to add data there will be a drop box for the CountyId and the values look something like this,

-1

1-

Here is my alter statement:

ALTER TABLE Baronies
ADD FOREIGN KEY (CountyId)
REFERENCES Counties (CountyId)
ON DELETE CASCADE

5条回答
唯我独甜
2楼-- · 2020-07-03 08:39

You can change the look of this dropdown using the ForeignKeyDropdownOrder option. (See the PMA documentation).

Example:

$cfg['ForeignKeyDropdownOrder'] = array( 'content-id');
/* 'content' is the referenced data, 'id' is the key value. */
查看更多
在下西门庆
3楼-- · 2020-07-03 08:39

Check if your tables use MyIsam engine. In that case foreign keys are not supported. Use InnoDB instead.

查看更多
仙女界的扛把子
4楼-- · 2020-07-03 08:48

As Lex said, this is just the way phpMyAdmin displays the values. If you see "-1" or "1-" in that dropdown box, it's just 1.

查看更多
我命由我不由天
5楼-- · 2020-07-03 08:56

go to operation than change myiasm to innoDB than Go

查看更多
萌系小妹纸
6楼-- · 2020-07-03 08:59

As i explained on ServerFault:

It is not negaitve number, the feature of phpMYAdmin is to show foreign key value and a custom description field next to it. In the referenced table (Counties) you can go to "Relation view" and under the table there is a select box "Choose field to display", in which you choose value that will be displayed next to CountyID value in the referencing table (Baronies). Also see: phpymadminWiki

查看更多
登录 后发表回答