Database
Módulo para gerenciamento de conexões com bancos de dados.
Este módulo fornece classes para configurar e gerenciar conexões com diversos bancos de dados SQL, utilizando SQLAlchemy.
DatabaseConfig
Bases: BaseModel
Define a configuração para uma conexão de banco de dados.
Atributos
name (str): Nome único para a conexão. dialect (str): Dialeto SQLAlchemy e driver (ex: 'mysql+pymysql'). database (str): Nome do banco de dados. username (Optional[str]): Nome de usuário para a conexão. password (Optional[str]): Senha para a conexão. host (Optional[str]): Endereço do servidor do banco de dados. port (Optional[int]): Porta do servidor do banco de dados. pool_size (int): Tamanho do pool de conexões. max_overflow (int): Número de conexões excedentes permitidas no pool.
Source code in datalchemy/database.py
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 | |
DatabaseConnectionManager
Gerencia múltiplas conexões com bancos de dados.
Esta classe é responsável por inicializar, adicionar, remover e fornecer acesso a sessões e engines de diferentes bancos de dados configurados.
Source code in datalchemy/database.py
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 | |
__init__(configs)
Inicializa o gerenciador com as configurações de conexão fornecidas.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
configs
|
List[Dict]
|
Lista de configurações de conexão. |
required |
Raises:
| Type | Description |
|---|---|
ValueError
|
Se alguma configuração estiver incorreta. |
ImportError
|
Se faltar algum driver necessário. |
Source code in datalchemy/database.py
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 | |
add_connection(config)
Adiciona uma nova conexão.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
config
|
DatabaseConfig
|
Configuração validada do banco de dados. |
required |
Raises:
| Type | Description |
|---|---|
ImportError
|
Se o driver necessário não estiver instalado. |
ValueError
|
Se o nome da conexão já existir. |
Source code in datalchemy/database.py
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 | |
close_all_connections()
Fecha todas as conexões abertas.
Source code in datalchemy/database.py
118 119 120 121 122 123 124 | |
get_engine(name)
Retorna a engine SQLAlchemy de uma conexão específica.
Source code in datalchemy/database.py
112 113 114 115 116 | |
get_session(name)
Retorna uma sessão ativa para consultas e transações.
Source code in datalchemy/database.py
106 107 108 109 110 | |