1
Member.id
を参照する外部キーEnrols.mid
を追加したかったのですが、インデックスの追加、キーの作成、グーグル作成の試行の後でもまだ動作していません。 2つの列のデータ型がまったく同じですが、外部キーを追加しても機能しないのはなぜですか?同じデータ型にもかかわらず "外部キー制約が正しくありません"
MariaDB [alumni]> alter table Enrols add foreign key (`mid`) references Member.id;
ERROR 1005 (HY000): Can't create table `alumni`.`#sql-31e_21d` (errno: 150 "Foreign key constraint is incorrectly formed")
MariaDB [alumni]> desc Member;
+-----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+-------+
| id | char(8) | NO | PRI | | |
| cName | varchar(8) | NO | | NULL | |
| eName | varchar(40) | NO | | NULL | |
| gender | char(1) | NO | | NULL | |
| org | varchar(40) | YES | | NULL | |
| pos | varchar(20) | YES | | NULL | |
| hobby | int(11) | NO | | NULL | |
| issueDate | date | NO | | NULL | |
| note | text | YES | | NULL | |
+-----------+-------------+------+-----+---------+-------+
9 rows in set (0.01 sec)
MariaDB [alumni]> desc Enrols;
+-------+---------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
| aid | int(11) | NO | PRI | NULL | |
| mid | char(8) | NO | PRI | | |
| paid | date | YES | | NULL | |
+-------+---------+------+-----+---------+-------+
4 rows in set (0.01 sec)
MariaDB [alumni]>
それはすべきではない 'リファレンスメンバー(id)を参照したい;':
あなた
.
構文が意味していますか。? –