From be55f16181ec9fd3d987e4a46ad5a2bdfbac825b Mon Sep 17 00:00:00 2001 From: eclipse Date: Wed, 16 Jul 2025 21:23:29 +0200 Subject: [PATCH] renamed file --- utils/sqlacodegen_output.py | 181 ------------------------------------ utils/sqlacodegen_tables.py | 123 ++++++++++++++++++++++++ 2 files changed, 123 insertions(+), 181 deletions(-) delete mode 100644 utils/sqlacodegen_output.py create mode 100644 utils/sqlacodegen_tables.py diff --git a/utils/sqlacodegen_output.py b/utils/sqlacodegen_output.py deleted file mode 100644 index 86497dd..0000000 --- a/utils/sqlacodegen_output.py +++ /dev/null @@ -1,181 +0,0 @@ -from typing import List, Optional - -from sqlalchemy import Column, ForeignKey, Integer, LargeBinary, Table, Text -from sqlalchemy.orm import DeclarativeBase, Mapped, mapped_column, relationship - -class Base(DeclarativeBase): - pass - - -class Genre(Base): - __tablename__ = 'Genre' - - Genre: Mapped[str] = mapped_column(Text) - ID: Mapped[Optional[int]] = mapped_column(Integer, primary_key=True) - - Text_: Mapped[List['Text_']] = relationship('Text_', secondary='Text_Genre', back_populates='Genre_') - Werk: Mapped[List['Werk']] = relationship('Werk', secondary='Werk_Genre', back_populates='Genre_') - - -class Herausgeber(Base): - __tablename__ = 'Herausgeber' - - Name: Mapped[str] = mapped_column(Text) - ID: Mapped[Optional[int]] = mapped_column(Integer, primary_key=True) - - Werk: Mapped[List['Werk']] = relationship('Werk', secondary='Werk_Herausgeber', back_populates='Herausgeber_') - - -class Pseudonym(Base): - __tablename__ = 'Pseudonym' - - Pseudonym: Mapped[str] = mapped_column(Text) - ID: Mapped[Optional[int]] = mapped_column(Integer, primary_key=True) - - Veroeffentlichung: Mapped[List['Veroeffentlichung']] = relationship('Veroeffentlichung', back_populates='Pseudonym1') - - -class Sprache(Base): - __tablename__ = 'Sprache' - - Sprache: Mapped[str] = mapped_column(Text) - ID: Mapped[Optional[int]] = mapped_column(Integer, primary_key=True) - - Text_: Mapped[List['Text_']] = relationship('Text_', back_populates='Sprache1') - - -class Textform(Base): - __tablename__ = 'Textform' - - Textform: Mapped[str] = mapped_column(Text) - ID: Mapped[Optional[int]] = mapped_column(Integer, primary_key=True) - - Text_: Mapped[List['Text_']] = relationship('Text_', back_populates='Textform1') - - -class Titelbild(Base): - __tablename__ = 'Titelbild' - - Mimetype: Mapped[str] = mapped_column(Text) - Dateiname: Mapped[str] = mapped_column(Text) - Dateigroesse: Mapped[int] = mapped_column(Integer) - Breite: Mapped[int] = mapped_column(Integer) - Hoehe: Mapped[int] = mapped_column(Integer) - Bild: Mapped[bytes] = mapped_column(LargeBinary) - Thumbnail: Mapped[bytes] = mapped_column(LargeBinary) - sha256: Mapped[str] = mapped_column(Text, unique=True) - ID: Mapped[Optional[int]] = mapped_column(Integer, primary_key=True) - - Werk: Mapped[List['Werk']] = relationship('Werk', back_populates='Titelbild1') - - -class Verlag(Base): - __tablename__ = 'Verlag' - - Verlag: Mapped[str] = mapped_column(Text) - ID: Mapped[Optional[int]] = mapped_column(Integer, primary_key=True) - - Reihe: Mapped[List['Reihe']] = relationship('Reihe', back_populates='Verlag1') - Werk: Mapped[List['Werk']] = relationship('Werk', back_populates='Verlag1') - - -class Werksform(Base): - __tablename__ = 'Werksform' - - Werksform: Mapped[str] = mapped_column(Text) - ID: Mapped[Optional[int]] = mapped_column(Integer, primary_key=True) - - Werk: Mapped[List['Werk']] = relationship('Werk', back_populates='Werksform1') - - -class Reihe(Base): - __tablename__ = 'Reihe' - - Titel: Mapped[str] = mapped_column(Text) - ID: Mapped[Optional[int]] = mapped_column(Integer, primary_key=True) - Verlag_: Mapped[Optional[str]] = mapped_column('Verlag', ForeignKey('Verlag.ID')) - - Verlag1: Mapped[Optional['Verlag']] = relationship('Verlag', back_populates='Reihe') - Text_: Mapped[List['Text_']] = relationship('Text_', back_populates='Reihe1') - Werk: Mapped[List['Werk']] = relationship('Werk', back_populates='Reihe1') - - -class Text_(Base): - __tablename__ = 'Text' - - Titel: Mapped[str] = mapped_column(Text) - ID: Mapped[Optional[int]] = mapped_column(Integer, primary_key=True) - Untertitel: Mapped[Optional[str]] = mapped_column(Text) - Reihe_: Mapped[Optional[int]] = mapped_column('Reihe', ForeignKey('Reihe.ID')) - Textform_: Mapped[Optional[int]] = mapped_column('Textform', ForeignKey('Textform.ID')) - Sprache_: Mapped[Optional[int]] = mapped_column('Sprache', ForeignKey('Sprache.ID')) - - Genre_: Mapped[List['Genre']] = relationship('Genre', secondary='Text_Genre', back_populates='Text_') - Reihe1: Mapped[Optional['Reihe']] = relationship('Reihe', back_populates='Text_') - Sprache1: Mapped[Optional['Sprache']] = relationship('Sprache', back_populates='Text_') - Textform1: Mapped[Optional['Textform']] = relationship('Textform', back_populates='Text_') - Veroeffentlichung: Mapped[List['Veroeffentlichung']] = relationship('Veroeffentlichung', back_populates='Text2') - - -class Werk(Base): - __tablename__ = 'Werk' - - Titel: Mapped[str] = mapped_column(Text) - ID: Mapped[Optional[int]] = mapped_column(Integer, primary_key=True) - Untertitel: Mapped[Optional[str]] = mapped_column(Text) - Werksform_: Mapped[Optional[int]] = mapped_column('Werksform', ForeignKey('Werksform.ID')) - Verlag_: Mapped[Optional[int]] = mapped_column('Verlag', ForeignKey('Verlag.ID')) - Reihe_: Mapped[Optional[int]] = mapped_column('Reihe', ForeignKey('Reihe.ID')) - Reihennummer: Mapped[Optional[str]] = mapped_column(Text) - Erscheinungsdatum: Mapped[Optional[str]] = mapped_column(Text) - ISBN_13: Mapped[Optional[str]] = mapped_column(Text) - ISBN_10: Mapped[Optional[str]] = mapped_column(Text) - ISSN: Mapped[Optional[str]] = mapped_column(Text) - Preis: Mapped[Optional[str]] = mapped_column(Text) - Titelbild_: Mapped[Optional[int]] = mapped_column('Titelbild', ForeignKey('Titelbild.ID')) - Klappentext: Mapped[Optional[str]] = mapped_column(Text) - Anmerkungen: Mapped[Optional[str]] = mapped_column(Text) - - Genre_: Mapped[List['Genre']] = relationship('Genre', secondary='Werk_Genre', back_populates='Werk') - Herausgeber_: Mapped[List['Herausgeber']] = relationship('Herausgeber', secondary='Werk_Herausgeber', back_populates='Werk') - Reihe1: Mapped[Optional['Reihe']] = relationship('Reihe', back_populates='Werk') - Titelbild1: Mapped[Optional['Titelbild']] = relationship('Titelbild', back_populates='Werk') - Verlag1: Mapped[Optional['Verlag']] = relationship('Verlag', back_populates='Werk') - Werksform1: Mapped[Optional['Werksform']] = relationship('Werksform', back_populates='Werk') - Veroeffentlichung: Mapped[List['Veroeffentlichung']] = relationship('Veroeffentlichung', back_populates='Werk1') - - -t_Text_Genre = Table( - 'Text_Genre', Base.metadata, - Column('Text', ForeignKey('Text.ID'), primary_key=True), - Column('Genre', ForeignKey('Genre.ID'), primary_key=True) -) - - -class Veroeffentlichung(Base): - __tablename__ = 'Veroeffentlichung' - - Text1: Mapped[int] = mapped_column('Text', ForeignKey('Text.ID')) - Werk_: Mapped[int] = mapped_column('Werk', ForeignKey('Werk.ID')) - Pseudonym_: Mapped[int] = mapped_column('Pseudonym', ForeignKey('Pseudonym.ID')) - ID: Mapped[Optional[int]] = mapped_column(Integer, primary_key=True) - AltTitel: Mapped[Optional[str]] = mapped_column(Text) - AltUntertitel: Mapped[Optional[str]] = mapped_column(Text) - - Pseudonym1: Mapped['Pseudonym'] = relationship('Pseudonym', back_populates='Veroeffentlichung') - Text2: Mapped['Text_'] = relationship('Text_', back_populates='Veroeffentlichung') - Werk1: Mapped['Werk'] = relationship('Werk', back_populates='Veroeffentlichung') - - -t_Werk_Genre = Table( - 'Werk_Genre', Base.metadata, - Column('Werk', ForeignKey('Werk.ID'), primary_key=True), - Column('Genre', ForeignKey('Genre.ID'), primary_key=True) -) - - -t_Werk_Herausgeber = Table( - 'Werk_Herausgeber', Base.metadata, - Column('Herausgeber', ForeignKey('Herausgeber.ID'), primary_key=True), - Column('Werk', ForeignKey('Werk.ID'), primary_key=True) -) diff --git a/utils/sqlacodegen_tables.py b/utils/sqlacodegen_tables.py new file mode 100644 index 0000000..2b4ccb8 --- /dev/null +++ b/utils/sqlacodegen_tables.py @@ -0,0 +1,123 @@ +from sqlalchemy import Column, ForeignKey, Integer, LargeBinary, MetaData, Table, Text + +metadata = MetaData() + + +t_Genre = Table( + 'Genre', metadata, + Column('ID', Integer, primary_key=True), + Column('Genre', Text, nullable=False) +) + +t_Herausgeber = Table( + 'Herausgeber', metadata, + Column('ID', Integer, primary_key=True), + Column('Name', Text, nullable=False) +) + +t_Pseudonym = Table( + 'Pseudonym', metadata, + Column('ID', Integer, primary_key=True), + Column('Pseudonym', Text, nullable=False) +) + +t_Sprache = Table( + 'Sprache', metadata, + Column('ID', Integer, primary_key=True), + Column('Sprache', Text, nullable=False) +) + +t_Textform = Table( + 'Textform', metadata, + Column('ID', Integer, primary_key=True), + Column('Textform', Text, nullable=False) +) + +t_Titelbild = Table( + 'Titelbild', metadata, + Column('ID', Integer, primary_key=True), + Column('Mimetype', Text, nullable=False), + Column('Dateiname', Text, nullable=False), + Column('Dateigroesse', Integer, nullable=False), + Column('Breite', Integer, nullable=False), + Column('Hoehe', Integer, nullable=False), + Column('Bild', LargeBinary, nullable=False), + Column('Thumbnail', LargeBinary, nullable=False), + Column('sha256', Text, nullable=False, unique=True) +) + +t_Verlag = Table( + 'Verlag', metadata, + Column('ID', Integer, primary_key=True), + Column('Verlag', Text, nullable=False) +) + +t_Werksform = Table( + 'Werksform', metadata, + Column('ID', Integer, primary_key=True), + Column('Werksform', Text, nullable=False) +) + +t_Reihe = Table( + 'Reihe', metadata, + Column('ID', Integer, primary_key=True), + Column('Titel', Text, nullable=False), + Column('Verlag', ForeignKey('Verlag.ID')) +) + +t_Text = Table( + 'Text', metadata, + Column('ID', Integer, primary_key=True), + Column('Titel', Text, nullable=False), + Column('Untertitel', Text), + Column('Reihe', ForeignKey('Reihe.ID')), + Column('Textform', ForeignKey('Textform.ID')), + Column('Sprache', ForeignKey('Sprache.ID')) +) + +t_Werk = Table( + 'Werk', metadata, + Column('ID', Integer, primary_key=True), + Column('Titel', Text, nullable=False), + Column('Untertitel', Text), + Column('Werksform', ForeignKey('Werksform.ID')), + Column('Verlag', ForeignKey('Verlag.ID')), + Column('Reihe', ForeignKey('Reihe.ID')), + Column('Reihennummer', Text), + Column('Erscheinungsdatum', Text), + Column('ISBN_13', Text), + Column('ISBN_10', Text), + Column('ISSN', Text), + Column('Preis', Text), + Column('Titelbild', ForeignKey('Titelbild.ID')), + Column('Klappentext', Text), + Column('Anmerkungen', Text) +) + +t_Text_Genre = Table( + 'Text_Genre', metadata, + Column('Text', ForeignKey('Text.ID'), primary_key=True), + Column('Genre', ForeignKey('Genre.ID'), primary_key=True) +) + +t_Veroeffentlichung = Table( + 'Veroeffentlichung', metadata, + Column('ID', Integer, primary_key=True), + Column('Text', ForeignKey('Text.ID'), nullable=False), + Column('Werk', ForeignKey('Werk.ID'), nullable=False), + Column('AltTitel', Text), + Column('AltUntertitel', Text), + Column('Pseudonym', ForeignKey('Pseudonym.ID'), nullable=False) +) + +t_Werk_Genre = Table( + 'Werk_Genre', metadata, + Column('Werk', ForeignKey('Werk.ID'), primary_key=True), + Column('Genre', ForeignKey('Genre.ID'), primary_key=True) +) + +t_Werk_Herausgeber = Table( + 'Werk_Herausgeber', metadata, + Column('Herausgeber', ForeignKey('Herausgeber.ID'), primary_key=True), + Column('Werk', ForeignKey('Werk.ID'), primary_key=True) +)