これは非常に単純な問題ですが、私はまだ解決策を見つけていません。シナリオは、DBに2つのテーブルがあることです。2番目のテーブルのソースは1番目のテーブルのSOURCE_URLに依存しています(255文字を超える可能性があるため、TEXTを使用しました)。
create table SOURCES (
SOURCES_PK int not null AUTO_INCREMENT primary key,
SOURCE_URL text not null unique,
DESCRIPTION varchar(255)
);
create table ASSERTIONGROUP (
ASSERTION_PK int AUTO_INCREMENT primary key,
LABEL varchar(255),
SOURCE text not null,
foreign key (SOURCE) references SOURCES(SOURCE_URL)
);
このエラーが発生します-
キーの長さなしでキー指定で使用されるBLOB/TEXT列'SOURCE'
この投稿で議論を見てきました-MySQLエラー:キーの長さがないキーの指定。
しかし、解決策を見つけることはできません。
最初のテーブルから一意を削除することはできますが、外部キー制約を割り当てることができません。
フィールドは一意ではないことを知っているTEXT
ので、別のフィールドを探しています。