Files
sisvietnamvn_01/sisvietnamvn_main/seed_template.py
T

58 lines
2.3 KiB
Python

import oracledb
import os
import sys
def seed_template():
print("Reading temp file...")
with open('/home/x79/sisvietnamvn_01/sisvietnamvn_main/html_snippets/content_main_blocks/temp', 'r', encoding='utf-8') as f:
content = f.read()
print("Connecting to Oracle...")
try:
# Connect to Oracle database
connection = oracledb.connect(
user="sisvietnam",
password="sisvietnam",
dsn="localhost:1521/sisvietnam"
)
cursor = connection.cursor()
# Check if it already exists
cursor.execute("SELECT id FROM sis_component_template WHERE slug = :slug", slug='video-fallback')
row = cursor.fetchone()
if row:
print(f"Template video-fallback already exists with ID {row[0]}. Updating content...")
cursor.execute("""
UPDATE sis_component_template
SET html_template = :content
WHERE id = :id
""", content=content, id=row[0])
else:
print("Inserting new video-fallback template...")
# We need to insert a new row. The ID might be auto-generated by sequence.
# Assuming id is generated by sequence or identity column.
# In Hibernate with Oracle, it usually uses a sequence sis_component_template_seq or SEQ_SIS_COMPONENT_TEMPLATE
# Let's try to insert without ID first (if it's identity column)
try:
cursor.execute("""
INSERT INTO sis_component_template (id, slug, name, description, active, html_template, created_by, created_date)
VALUES ((SELECT NVL(MAX(id), 0) + 1 FROM sis_component_template), :slug, :name, :description, :active, :content, 'system', CURRENT_TIMESTAMP)
""", slug='video-fallback', name='Video Fallback Banner', description='Fallback for homepage hero video', active=1, content=content)
except Exception as e:
print(f"Insert with MAX(id) failed: {e}")
connection.commit()
print("Successfully seeded video-fallback template!")
cursor.close()
connection.close()
except Exception as e:
print(f"Error: {e}")
sys.exit(1)
if __name__ == '__main__':
seed_template()