Możesz znaleźć tutaj dokumentację SQLAlchemy, która to omawia. Oracle nie ma funkcji automatycznego przyrostu i opiera się na sekwencji, aby naśladować zachowanie.
Twoja kolumna identyfikatora powinna wyglądać tak:
id_seq = Sequence('id_seq')
id = db.Column(db.Integer, id_seq,
server_default=id_seq.next_value(), primary_key=True)