6

他のテーブルに外部キーを追加しようとしていますが、これによりエラーが発生しました #1072 - Key column 'role_id' doesn't exist in table

という名前のテーブルを作成しましたrole

それから私はこのように作成しました

create table role (
  role_id varchar(15)
  primary key (role_id)
)

次に、テーブルのテーブルを変更しようとするuser

alter table user
add foreign key (role_id)
references role(role_id)

そして、私はこのようなエラーを得ました

#1072 - Key column 'role_id' doesn't exist in table

4

3 に答える 3

6

user テーブル内のadd foreign key (role_idで参照する列が必要です。)そうしないと、そのエラーが発生します。

ユーザーテーブル内に次のようなものが必要です。

create table user(
  ...
  role_id varchar(15)
  ...
)

または、持っていない場合は、次のことを行う必要があります。

ALTER TABLE user ADD COLUMN role_id VARCHAR(15)

外部キーとして設定する前に。

于 2013-09-20T12:22:18.070 に答える
-1

テーブルuserに列がありませんrole_id

于 2013-09-20T12:25:30.047 に答える