Try changing:
payment_method_id tinyint(4), to
payment_method_id integer
I have never seen tinyint, integer, or any number type qualified with a size. E.g. tinyint(4).
Size qualification is used with varchar, E.g. varchar(20).
Here is an example:
drop table person;
create table person
(
id integer AUTO_INCREMENT PRIMARY KEY,
birth_date timestamp,
location varchar(255),
name varchar(255)
);
INSERT INTO PERSON (NAME, LOCATION, BIRTH_DATE ) VALUES(‘Pieter’, ‘Amsterdam’,sysdate());
INSERT INTO PERSON (NAME, LOCATION, BIRTH_DATE ) VALUES(‘Jerry’, ‘Pittsburgh’,sysdate());
NOTE: You do NOT give a value to an AUTO_INCREMENT field when inserting a row.