1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| from sqlalchemy import CHAR, Column, DateTime, ForeignKeyConstraint, Index, MetaData, PrimaryKeyConstraint, TIMESTAMP, Table, VARCHAR
from sqlalchemy.dialects.oracle import NUMBER
from sqlalchemy.orm.base import Mapped
from dataclasses import dataclass
from sqlalchemy import create_engine, MetaData, Table, select , text
from sqlalchemy import create_engine
from sqlalchemy.orm import Session
metadata = MetaData()
t_livre = Table(
'livre', metadata,
Column('idlivre', NUMBER(8, 0, False)),
Column('ReferenceLivre', VARCHAR(12), nullable=False),
Column('idBib', NUMBER(8, 0, False), nullable=False),
Column('titre', VARCHAR(250), nullable=False),
Column('Idauteur', NUMBER(8, 0, False), nullable=False),
Column('dtcreation', DateTime),
Column('dtpublication', DateTime),
PrimaryKeyConstraint('idlivre', name='pk_idlivre'),
Index('ReferenceLivre', 'idBib', 'Idauteur')
)
@dataclass
class Iduser:
user: str = None
passw: str = None
serveur: str = None
port: str = None
nom_de_service: str = None
def id_cx_oracle(self):
idcon = f'oracle+cx_oracle://{self.user}:{self.passw}@{self.serveur}:{self.port}/?service_name={self.nom_de_service}'
return idcon
def id_oracledb(self):
idcon = f'oracle+oracledb://{self.user}:{self.passw}@{self.serveur}:{self.port}/?service_name={self.nom_de_service}'
return idcon
if __name__ == '__main__':
connexion_pass = Iduser(user='mon utilisateur', passw='le mot de passe', serveur='mon serveur', port='Numero de port', nom_de_service=' service name') |
Partager