使用mysql的串行外键

使用mysql的串行外键,mysql,sql,foreign-keys,Mysql,Sql,Foreign Keys,这些是我的桌子: CREATE TABLE Utente ( ID serial primary key name varchar(20) ); CREATE TABLE friendship( idUtente1 bigint NOT NULL UNIQUE UNSIGNED , idUtente2 bigint NOT NULL UNIQUE UNSIGNED , dataAmicizia date, primary key (idUte

这些是我的桌子:

CREATE TABLE Utente (
    ID serial primary key
    name varchar(20)
);

CREATE TABLE friendship(
    idUtente1 bigint NOT NULL UNIQUE UNSIGNED , 
    idUtente2 bigint NOT NULL UNIQUE UNSIGNED , 
    dataAmicizia date,
    primary key (idUtente1,idUtente2), 
    FOREIGN KEY (idUtente1) REFERENCES Utente(ID),
    FOREIGN KEY (idUtente2) REFERENCES Utente(ID)
);
我的问题是:我无法创建外键,因为
idute1
是串行的


我试图在两个位置都添加自动增量,但这是不可能的。如何解决?

串行是
BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE的别名

idute1
也必须是一个匹配项。除了自动增量

为表友谊尝试以下方法:

CREATE TABLE friendship(
    idUtente1 bigint UNSIGNED , 
    idUtente2 bigint UNSIGNED , 
    dataAmicizia date,
    primary key (idUtente1,idUtente2), 
    FOREIGN KEY (idUtente1) REFERENCES Utente(ID),
    FOREIGN KEY (idUtente2) REFERENCES Utente(ID)
);

是的,我知道,但如果我不添加自动增量,它就不起作用。