-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconexao.py
More file actions
49 lines (41 loc) · 1.52 KB
/
conexao.py
File metadata and controls
49 lines (41 loc) · 1.52 KB
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
47
48
49
import config, sys
from orator import DatabaseManager
class Conexao():
databases = {}
link = None
def __init__(self, link = 'padrao'):
if config.configs['databases']:
self.databases = config.configs['databases']
self.link = link
else:
raise Exception("Index 'databases' nao encontrado na variavel config.")
def qb(self, linkDb = ''):
if linkDb != '':
link = linkDb
else:
link = self.link
try:
if link in self.databases:
database = self.databases[link]
return DatabaseManager({
database['driver']: {
'driver' : database['driver'],
'host' : database['host'],
'database' : database['database'],
'user' : database['user'],
'password' : database['password'],
'prefix' : database['prefix']
}
})
else:
raise Exception("O link '"+ link +"' nao foi encontrado na variavel config.")
except Exception as e:
raise Exception("Falha ao conectar ao banco de dados: \n"+ e[1])
def execLinha(self, qb):
linha = self.executar(qb)
if len(linha) > 0 :
return linha[0]
else:
return {}
def executar(self, qb):
return qb.get()