Initial commit: What To Cook (WTC) v4.4 - Digitales Kochbuch, Wochenmenueplan & Buchdruck
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
import os
|
||||
import pymysql
|
||||
from dotenv import load_dotenv
|
||||
|
||||
load_dotenv("/home/maxi/Projekt/wtc.waiswuaschd.de/.env")
|
||||
|
||||
conn = pymysql.connect(
|
||||
host=os.getenv("MARIADB_HOST", "db.waiswuaschd.de"),
|
||||
user=os.getenv("MARIADB_USER", "v2_usr_wtc_cookbook"),
|
||||
password=os.getenv("MARIADB_PASS", "XKikHf&j6Wj!rs5%A8#ZzyvE#*A1hT"),
|
||||
database=os.getenv("MARIADB_NAME", "v2_db_wtc_cookbook"),
|
||||
charset="utf8mb4",
|
||||
cursorclass=pymysql.cursors.DictCursor,
|
||||
autocommit=False
|
||||
)
|
||||
|
||||
try:
|
||||
with conn.cursor() as cur:
|
||||
# Check if column printed_at exists
|
||||
cur.execute("""
|
||||
SELECT COLUMN_NAME
|
||||
FROM INFORMATION_SCHEMA.COLUMNS
|
||||
WHERE TABLE_SCHEMA = %s AND TABLE_NAME = 'recipes' AND COLUMN_NAME = 'printed_at'
|
||||
""", (os.getenv("MARIADB_NAME", "v2_db_wtc_cookbook"),))
|
||||
row = cur.fetchone()
|
||||
if not row:
|
||||
print("Füge Spalte 'printed_at' zur Tabelle 'recipes' hinzu...")
|
||||
cur.execute("ALTER TABLE recipes ADD COLUMN printed_at DATETIME NULL DEFAULT NULL AFTER image_url")
|
||||
conn.commit()
|
||||
print("Spalte 'printed_at' erfolgreich hinzugefügt.")
|
||||
else:
|
||||
print("Spalte 'printed_at' existiert bereits.")
|
||||
|
||||
cur.execute("DESCRIBE recipes")
|
||||
for col in cur.fetchall():
|
||||
if col["Field"] in ["id", "title", "image_url", "printed_at", "created_at"]:
|
||||
print(f" {col['Field']}: {col['Type']} (Null: {col['Null']})")
|
||||
|
||||
except Exception as e:
|
||||
conn.rollback()
|
||||
print("Fehler:", e)
|
||||
raise
|
||||
finally:
|
||||
conn.close()
|
||||
Reference in New Issue
Block a user