modulitiz-micro 2.27.2__py311-none-any.whl → 2.28.0__py311-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- modulitiz_micro/database/AbstractSql.py +11 -0
- modulitiz_micro/database/ModuloSqlServer.py +6 -13
- modulitiz_micro/database/mysql/ModuloMysql.py +18 -6
- modulitiz_micro/database/sqlite/ModuloSQLite.py +7 -7
- {modulitiz_micro-2.27.2.dist-info → modulitiz_micro-2.28.0.dist-info}/METADATA +1 -1
- {modulitiz_micro-2.27.2.dist-info → modulitiz_micro-2.28.0.dist-info}/RECORD +9 -9
- {modulitiz_micro-2.27.2.dist-info → modulitiz_micro-2.28.0.dist-info}/LICENSE +0 -0
- {modulitiz_micro-2.27.2.dist-info → modulitiz_micro-2.28.0.dist-info}/WHEEL +0 -0
- {modulitiz_micro-2.27.2.dist-info → modulitiz_micro-2.28.0.dist-info}/top_level.txt +0 -0
@@ -28,6 +28,17 @@ class AbstractSql(ABC):
|
|
28
28
|
cursoreDb=self.connDb.cursor()
|
29
29
|
return cursoreDb
|
30
30
|
|
31
|
+
def fetchOne(self,cursoreDb):
|
32
|
+
"""
|
33
|
+
Retrieve first row of query
|
34
|
+
"""
|
35
|
+
with cursoreDb:
|
36
|
+
with self.lock:
|
37
|
+
result=cursoreDb.fetchone()
|
38
|
+
if not result:
|
39
|
+
return None
|
40
|
+
return result[0]
|
41
|
+
|
31
42
|
def count(self,cursoreDb)->int:
|
32
43
|
with cursoreDb:
|
33
44
|
with self.lock:
|
@@ -23,23 +23,16 @@ class ModuloSqlServer(AbstractSql):
|
|
23
23
|
results=list(cursoreDb)
|
24
24
|
return results
|
25
25
|
|
26
|
-
|
27
|
-
def selectOne(cursoreDb,sql:str,params:list)->list:
|
28
|
-
"""
|
29
|
-
Scarica la prima riga della query
|
30
|
-
"""
|
26
|
+
def select_count(self,cursoreDb,sql:str,params:list)->int:
|
31
27
|
with cursoreDb:
|
32
28
|
cursoreDb.execute(sql,params)
|
33
|
-
|
34
|
-
return
|
29
|
+
output=self.count(cursoreDb)
|
30
|
+
return output
|
35
31
|
|
36
|
-
def select_count(self,cursoreDb,sql:str,params:list)->int:
|
37
|
-
elemento=self.selectOne(cursoreDb,sql,params)
|
38
|
-
return int(elemento[0])
|
39
|
-
|
40
|
-
#usare se si vogliono fare delle modifiche ai dati
|
41
|
-
#tipo: insert, update, delete
|
42
32
|
def modifica(self,cursoreDb,sql:str,params:list,ignore_unique_index:bool):
|
33
|
+
"""
|
34
|
+
Use it for data modifications like: insert, update, delete
|
35
|
+
"""
|
43
36
|
try:
|
44
37
|
cursoreDb.execute(sql,params)
|
45
38
|
except pypyodbc.IntegrityError as ie:
|
@@ -39,6 +39,12 @@ class AbstractMysql(AbstractSql):
|
|
39
39
|
self.TABLE_OPTIONS=self.getTableOptions(isDebug)
|
40
40
|
self.isDbNew=None
|
41
41
|
|
42
|
+
@abstractmethod
|
43
|
+
def schema(self):
|
44
|
+
"""
|
45
|
+
Insert here sql instructions containing table definitions (DDL)
|
46
|
+
"""
|
47
|
+
|
42
48
|
def initDdl(self):
|
43
49
|
#scelgo il db
|
44
50
|
try:
|
@@ -57,14 +63,20 @@ class AbstractMysql(AbstractSql):
|
|
57
63
|
for risultati in self.executeScript(sqlStr):
|
58
64
|
yield risultati
|
59
65
|
|
60
|
-
@
|
61
|
-
def
|
66
|
+
@staticmethod
|
67
|
+
def getLastIdInserted(cursoreDb):
|
68
|
+
return cursoreDb.lastrowid
|
69
|
+
|
70
|
+
def selectNow(self):
|
62
71
|
"""
|
63
|
-
|
72
|
+
Returns current db date and time.
|
64
73
|
"""
|
65
|
-
|
66
|
-
|
67
|
-
|
74
|
+
sql="SELECT {};".format(self.DATE_TIME_NOW)
|
75
|
+
with self.initCursore() as cursoreDb:
|
76
|
+
with self.lock:
|
77
|
+
cursoreDb.execute(sql,{})
|
78
|
+
output=self.fetchOne(cursoreDb)
|
79
|
+
return output
|
68
80
|
|
69
81
|
def executeScript(self,sqlStr:str):
|
70
82
|
sqlCmds=sqlStr.split(";")
|
@@ -35,6 +35,11 @@ class AbstractSqlite(AbstractSql):
|
|
35
35
|
|
36
36
|
TIMEOUT_CONNECTION=10
|
37
37
|
|
38
|
+
@abstractmethod
|
39
|
+
def schema(self):
|
40
|
+
"""
|
41
|
+
Insert here sql instructions containing table definitions (DDL)
|
42
|
+
"""
|
38
43
|
|
39
44
|
def __init__(self,nomefile_db:str,show_sql:bool=False):
|
40
45
|
super().__init__()
|
@@ -61,13 +66,8 @@ class AbstractSqlite(AbstractSql):
|
|
61
66
|
cursoreDb.executescript(sql_str)
|
62
67
|
self.commit()
|
63
68
|
|
64
|
-
@
|
65
|
-
def
|
66
|
-
"""
|
67
|
-
Inserire le istruzioni sql contenenti la dichiarazione delle tabelle (DDL)
|
68
|
-
"""
|
69
|
-
|
70
|
-
def getLastIdInserted(self,cursoreDb):
|
69
|
+
@staticmethod
|
70
|
+
def getLastIdInserted(cursoreDb):
|
71
71
|
return cursoreDb.lastrowid
|
72
72
|
|
73
73
|
def paginazione(first_result:int,num_results:int)->str:
|
@@ -16,16 +16,16 @@ modulitiz_micro/android/ModuloAndroidSim.py,sha256=UWfpMJSw6xktKdUzr0Snsy47ZHpHh
|
|
16
16
|
modulitiz_micro/android/beans/SmsBean.py,sha256=_7dZbNrHi5CFt3Z0SrqFV3VVb2QuKVfwBnsvC6cGDQc,444
|
17
17
|
modulitiz_micro/android/enums/AndroidSmsTypeEnum.py,sha256=3jE5ZhtlXPZNYbs0U07igQeRBN8uZyxHXxW3C4hXZ0I,265
|
18
18
|
modulitiz_micro/database/AbstractDatabaseService.py,sha256=iVi43Hhvo7L-BUSWowm-AUcW4Ecnbvyk_0ZFgZZMQwE,270
|
19
|
-
modulitiz_micro/database/AbstractSql.py,sha256=
|
19
|
+
modulitiz_micro/database/AbstractSql.py,sha256=53jUBphwX7HH1FhIWcf3yPDZJD9OG6gIoGyk1VfOGiM,1200
|
20
20
|
modulitiz_micro/database/ModuloSqlOracle.py,sha256=82pDbbT5sqe4rMcUzu9Nb2e7bROgs53yg1ufCg8GGkw,484
|
21
|
-
modulitiz_micro/database/ModuloSqlServer.py,sha256=
|
21
|
+
modulitiz_micro/database/ModuloSqlServer.py,sha256=S8PzCgzTuEuHHF7SuqhJXsl2kC_f2MZAQ8k4ciw7Wk0,1236
|
22
22
|
modulitiz_micro/database/eccezioni/EccezioneDbNoData.py,sha256=eXcD3x3-3Wf6SFMEyQZj24KccHhVnSZteM9pkrsGU-g,186
|
23
23
|
modulitiz_micro/database/mysql/AbstractBasicMysql.py,sha256=C03qCWI3-8sCrp_CFfgPmSPal6USiH5EteFa0Q3i3Rs,3581
|
24
|
-
modulitiz_micro/database/mysql/ModuloMysql.py,sha256=
|
24
|
+
modulitiz_micro/database/mysql/ModuloMysql.py,sha256=HAo0xBjS0HJwBczB-1mNQTWZ22ZC-7I2tFfh2UdXpR4,5544
|
25
25
|
modulitiz_micro/database/mysql/MysqlCommonConverter.py,sha256=jZFQykrgZ3L-hALfnCXnnN54OVfqb8xFtZs48WRt8nc,1336
|
26
26
|
modulitiz_micro/database/mysql/eccezioni/EccezioneMysqlOffline.py,sha256=gKNgFegRSYCNrNBlaq2helOyMhXjpVC_DKCt-i341Gs,164
|
27
27
|
modulitiz_micro/database/sqlite/AbstractBasicSQLite.py,sha256=QspbJoa1btiHjuETSPOh4QJ550T6_dPRildBa0KNIMU,3470
|
28
|
-
modulitiz_micro/database/sqlite/ModuloSQLite.py,sha256=
|
28
|
+
modulitiz_micro/database/sqlite/ModuloSQLite.py,sha256=bfjk5HRm9wo2kjqUn6PbCiZMuawXVEcPb7AK6XDhZdY,2386
|
29
29
|
modulitiz_micro/eccezioni/EccezioneBase.py,sha256=sRzCwhMDC4sDSchT7j1y-bLxKyqDTD9pc6Df7qggZ9Q,193
|
30
30
|
modulitiz_micro/eccezioni/EccezioneCtrlC.py,sha256=-O5oG2ZkX7NoWLDewLETX5a20Ea4AYashf8TFwsuatc,185
|
31
31
|
modulitiz_micro/eccezioni/EccezioneRuntime.py,sha256=lSwwGf_AsW6EjwkB88oF_mpLKQHj0fdjOy8H3uWRRBo,168
|
@@ -94,8 +94,8 @@ modulitiz_micro/util/unittesting/ModuloRunUnitTest.py,sha256=_YHxjTk_t9wvlCYgS4H
|
|
94
94
|
modulitiz_micro/util/wheel/ModuloBuildWheel.py,sha256=-NTUqEjmGl8OUFa1hSwmBbLOaoJZhmzStvOexIN6CDo,5039
|
95
95
|
modulitiz_micro/util/wheel/ModuloToml.py,sha256=774GQ8y6lyhOrT0edJPlLq4TBU7Nq4699q74deGlFW4,1205
|
96
96
|
modulitiz_micro/util/wheel/ModuloWheel.py,sha256=VRS_6kSt62qubBYzkGm91_GWzcIiD0KlSnaqhM_aQnE,338
|
97
|
-
modulitiz_micro-2.
|
98
|
-
modulitiz_micro-2.
|
99
|
-
modulitiz_micro-2.
|
100
|
-
modulitiz_micro-2.
|
101
|
-
modulitiz_micro-2.
|
97
|
+
modulitiz_micro-2.28.0.dist-info/LICENSE,sha256=b-Ia9Hv3N_FviXoFAXG44lDGbk4tCC0fBdduccm8nl0,1086
|
98
|
+
modulitiz_micro-2.28.0.dist-info/METADATA,sha256=hn6WvcIjE4RapthlYwmTh04NfJbSIt2UQzqZ4A3whMU,1651
|
99
|
+
modulitiz_micro-2.28.0.dist-info/WHEEL,sha256=2aRSX09k7pmd4gPs96VOQ860h0v0t30ka6JGHtpC3BY,94
|
100
|
+
modulitiz_micro-2.28.0.dist-info/top_level.txt,sha256=ESJE0qtNJp3tbKPrffbFVjH511NSjJHxscfpdLjTpA8,16
|
101
|
+
modulitiz_micro-2.28.0.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|