Create table reference foreign key
You don't define a column USERNAME in your MemberShip table

CREATE TABLE Membership 
(
  MembershipNo INT Primary Key,
  DatePaid date NOT NULL,
  DateTo date,
  AnnualFee INT NOT NULL,
  username varchar(20) not null, -- &lt;&lt; you are missing this
  foreign key (USERNAME) references Person(USERNAME)
);


alternatively directly behind the column: 

CREATE TABLE Membership 
(
  MembershipNo INT Primary Key,
  DatePaid date NOT NULL,
  DateTo date,
  AnnualFee INT NOT NULL,
  username varchar(20) not null references Person(USERNAME)
);