tmp_update_orders_schema.py 973 B

1234567891011121314151617181920212223242526272829
  1. import mysql.connector
  2. from db import DB_CONFIG
  3. def update_schema():
  4. try:
  5. conn = mysql.connector.connect(**DB_CONFIG)
  6. cursor = conn.cursor()
  7. try:
  8. cursor.execute("ALTER TABLE orders ADD COLUMN user_id INT NULL;")
  9. cursor.execute("ALTER TABLE orders ADD CONSTRAINT fk_orders_user FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE SET NULL;")
  10. except mysql.connector.Error as e:
  11. if e.errno == 1060: # Column already exists
  12. print("Column user_id already exists")
  13. else:
  14. print(f"Error adding user_id: {e}")
  15. conn.commit()
  16. print("Schema update for orders successful")
  17. except mysql.connector.Error as err:
  18. print(f"Error: {err}")
  19. finally:
  20. if 'conn' in locals() and conn.is_connected():
  21. cursor.close()
  22. conn.close()
  23. if __name__ == "__main__":
  24. update_schema()