Good articles, easy for starters.
I think u should add some retry or using an ORM for rollback in exception. Additionally, if u are using pandas that way, it is good performance when u are trying to using the df.to_sql function instead looping through out rows.