Does my ERD look well designed? I am making a database at no cost for a local dance school. I'm still very new this would like to be sure that I designed it appropriately.

From the front end, the parent will: fill out their personal info, create a student for each child and, an account number will be assigned to the parent. Each student will have an annual fee(s) attached to their name. Student will be enrolled in classes by the parent and, I plan to total the costs by adding together each unique enrolment for a student.

I think the diagram can explain the rest. Have I designed done this properly?
PRIMARY KEY (`STUDENT_ID`, `ANNUAL_FEES_ANNUAL_FEE_ID`, `PARENTS_PARENTS_ID`, `PARENTS_ACCOUNTS_ACCOUNT_ID`),


It seems like Students would have student_id as its PRIMARY KEY.

DECIMAL(4,2) -- do you want to limit things to $99.99?

This is what I mean about many-to-many relation table:

CREATE TABLE XtoY (
    # No surrogate id for this table
    x_id MEDIUMINT UNSIGNED NOT NULL,   -- For JOINing to one table
    y_id MEDIUMINT UNSIGNED NOT NULL,   -- For JOINing to the other table
    # Include other fields specific to the 'relation'
    PRIMARY KEY(x_id, y_id),            -- When starting with X
    INDEX      (y_id, x_id)             -- When starting with Y
) ENGINE=InnoDB;


What is a "Performance_Student"?

Parents table:

parent_id MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT,
family_id MEDIUMINT UNSIGNED NOT NULL,
type ENUM('mother', 'father', 'guardian', 'grandparent', 'other'),
`LAST_NAME` VARCHAR(35) NULL,
`FIRST_NAME` VARCHAR(35) NULL,
`EMAIL` VARCHAR(50) NULL
PRIMARY KEY(parent_id)


The Phones table would have parent_id and be many_to_1.