Tenías dos errores:
1) Había un espacio entremedio de un nombre de campo en una FK.
2) Estabas definiendo una PK multicampo en ARTICULO, que no la necesita tan larga, y luego en COMPRA declarabas una FK hacia ARTICULO usando un sólo campo. Una FK es un campo o conjunto de campos que apunta a una PK de otra tabla.
A toda la PK; si la misma tiene más de un campo, todos ellos deben estar reflejados en la tabla que la use de FK.
Código MySQL:
Ver original
/* TABLAS */
(
(
(
(
(
/* INSERCION */