1

これが私のスクリプトです:

create table Country
(
CountryId int primary key,
Name varchar(255)
);

create table Person
(
PersonId int primary key,
Name varchar(255),
FOREIGN KEY (CountryId) references Country(CountryId)
);

私はMSSQLから移行し、MySQLを把握しようとしています。まず、外部キーの感触をつかむために、Person->Countryの関係という典型的なHelloWorldから始めます。

PHPMyAdminでこのエラーが発生します:

SQLクエリ:

CREATE TABLE Person(

PersonId INT PRIMARY KEY、Name VARCHAR(255)、FOREIGN KEY(CountryId)REFERENCES Country(CountryId));

MySQLは言った:

1072-キー列'CountryId'がテーブルに存在しません

私はここでどんな初心者の間違いを犯していますか?

4

1 に答える 1

2

これは、外部キーで使用される列を Person に作成していないためですKey column 'CountryId' doesn't exist in table。方法は次のとおりです。

CREATE TABLE Person(
    PersonId INT PRIMARY KEY , 
    Name VARCHAR( 255 ) , 
    CountryId int,
    FOREIGN KEY ( CountryId ) REFERENCES Country( CountryId )
);
于 2012-09-10T20:02:12.820 に答える