403Webshell
Server IP : 185.11.201.71  /  Your IP : 192.168.7.18
Web Server : Apache/2.4.29 (Ubuntu)
System : Linux tech-virtual-machine 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64
User : tech ( 1000)
PHP Version : 7.4.28
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
MySQL : OFF  |  cURL : OFF  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /comunica/app_ojos_/app/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /comunica/app_ojos_/app/database.py
"""
database.py

Description: Database connection setup and session management.

Last Updated: 2024-08-07
Version: 1.0.0
Copyright (c) 2024 Tech-Impulse, Gerard Lahuerta
License: MIT License (see LICENSE for more details)
"""

#################################################################################################################################

from sqlalchemy import create_engine, text
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
from sqlalchemy.exc import OperationalError

import sys
import os

sys.path.append(os.path.dirname(os.path.abspath(__file__)))

from config import SQL_DATABASE_URL, CONN_SQL_SERVER, MYSQL_DB

#################################################################################################################################

def create_database():
    try:
        # Conectar al servidor MySQL sin especificar una base de datos
        engine = create_engine(CONN_SQL_SERVER)
        conn = engine.connect()
        # Ejecutar la consulta para crear la base de datos si no existe
        conn.execute(text(f"CREATE DATABASE IF NOT EXISTS {MYSQL_DB}"))
        conn.close()
    except OperationalError as e:
        print(f"Error creating database: {e}")
        raise

def get_db():
    db = SessionLocal()
    try:
        yield db
    finally:
        db.close()

#################################################################################################################################

# Crear la base de datos si no existe
create_database()

engine = create_engine(SQL_DATABASE_URL)

Base = declarative_base()

SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)

Youez - 2016 - github.com/yon3zu
LinuXploit