Nhìn lại thì đây là một sai lầm thực sự ngu ngốc nhưng khó phát hiện ra. Giá trị là một từ khóa trong sql nên giá trị của tên bảng cần có dấu ngoặc kép xung quanh nó.
def __insert_values(self, values):
cursor = self.connection.cursor()
cursor.executemany("""
insert into `values` (ensg, value, sampleid)
values (%s, %s, %s)""", values)
cursor.close()