Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie ändere ich zwei verschiedene Spaltenüberschriften einer bereits vorhandenen Datenbanktabelle in sqlalchemy?

Es scheint, dass Sie den ersten Wert nach der zweiten Ersetzung überschreiben. Ich hoffe, den .replace zu verketten funktioniert:

@event.listens_for(Table, "column_reflect")
def reflect_col(inspector, table, column_info):
   column_info['key'] = column_info['name'].replace(' ', '_').replace('1st_time', 'secondcheck')

[BEARBEITEN]: Sie müssen auch sicherstellen, dass die Änderungen nicht kollidieren.

Da in diesem Beispiel die erste Änderung Leerzeichen durch Unterstriche ersetzt, müssen Sie die zweite Ersetzung anpassen, da sie bereits 1st_time heißt wenn die zweite Ersetzung aufgerufen wird.