ezKit 1.12.50__tar.gz → 1.12.51__tar.gz
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.
- {ezkit-1.12.50/ezKit.egg-info → ezkit-1.12.51}/PKG-INFO +1 -1
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/database.py +52 -34
- {ezkit-1.12.50 → ezkit-1.12.51/ezKit.egg-info}/PKG-INFO +1 -1
- {ezkit-1.12.50 → ezkit-1.12.51}/setup.py +1 -1
- {ezkit-1.12.50 → ezkit-1.12.51}/LICENSE +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/MANIFEST.in +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/README.md +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/__init__.py +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/_file.py +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/auth.py +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/bottle.py +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/bottle_extensions.py +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/cipher.py +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/dockerhub.py +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/errors.py +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/fastapix.py +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/http.py +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/markdown_to_html.template +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/mongo.py +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/qywx.py +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/redis.py +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/sendemail.py +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/token.py +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/utils.py +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/xftp.py +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit/zabbix.py +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit.egg-info/SOURCES.txt +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit.egg-info/dependency_links.txt +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit.egg-info/requires.txt +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/ezKit.egg-info/top_level.txt +0 -0
- {ezkit-1.12.50 → ezkit-1.12.51}/setup.cfg +0 -0
@@ -599,18 +599,14 @@ class Database:
|
|
599
599
|
try:
|
600
600
|
# SQL文件优先
|
601
601
|
if isinstance(read_sql_file, dict) and utils.isTrue(read_sql_file, dict):
|
602
|
-
read_sql_file.pop("encoding")
|
603
|
-
|
604
|
-
|
605
|
-
|
606
|
-
|
607
|
-
}
|
608
|
-
with open(encoding="utf-8", **read_sql_file_kwargs) as _file:
|
609
|
-
sql_statement = _file.read()
|
610
|
-
else:
|
611
|
-
if not isinstance(sql, str):
|
612
|
-
return None
|
602
|
+
encoding = read_sql_file.pop("encoding", "utf-8")
|
603
|
+
file_kwargs = {"mode": "r", **read_sql_file}
|
604
|
+
with open(encoding=encoding, **file_kwargs) as f:
|
605
|
+
sql_statement = f.read()
|
606
|
+
elif isinstance(sql, str):
|
613
607
|
sql_statement = sql
|
608
|
+
else:
|
609
|
+
return None
|
614
610
|
except Exception as e:
|
615
611
|
logger.exception(e)
|
616
612
|
return None
|
@@ -618,36 +614,58 @@ class Database:
|
|
618
614
|
# ------------------------------------------------------------------------------------------
|
619
615
|
|
620
616
|
# 创建一个连接
|
621
|
-
with self.engine.connect() as connection:
|
617
|
+
# with self.engine.connect() as connection:
|
622
618
|
|
623
|
-
|
624
|
-
|
619
|
+
# # 开始一个事务
|
620
|
+
# with connection.begin(): # 事务会自动提交或回滚
|
625
621
|
|
626
|
-
|
622
|
+
# try:
|
627
623
|
|
628
|
-
|
629
|
-
|
624
|
+
# # 执行 SQL 查询
|
625
|
+
# result = connection.execute(text(sql_statement))
|
630
626
|
|
631
|
-
|
632
|
-
|
627
|
+
# # 执行成功
|
628
|
+
# logger.success(f"{info} [success]")
|
633
629
|
|
634
|
-
|
635
|
-
|
636
|
-
|
637
|
-
|
638
|
-
|
639
|
-
|
640
|
-
|
641
|
-
|
642
|
-
|
630
|
+
# # 返回查询结果
|
631
|
+
# if isinstance(save_to_csv, dict) and utils.isTrue(save_to_csv, dict):
|
632
|
+
# save_to_csv_kwargs: dict = {
|
633
|
+
# "mode": "w",
|
634
|
+
# "encoding": "utf-8",
|
635
|
+
# **save_to_csv,
|
636
|
+
# }
|
637
|
+
# with open(encoding="utf-8", **save_to_csv_kwargs) as _file:
|
638
|
+
# return self._result_save(_file, result)
|
643
639
|
|
644
|
-
|
640
|
+
# return result
|
645
641
|
|
646
|
-
|
647
|
-
|
648
|
-
|
649
|
-
|
650
|
-
|
642
|
+
# except Exception as e:
|
643
|
+
# # 发生异常时回滚事务
|
644
|
+
# logger.info(f"{info} [failed]")
|
645
|
+
# logger.exception(e)
|
646
|
+
# return None
|
647
|
+
|
648
|
+
try:
|
649
|
+
|
650
|
+
# 连接 + 事务
|
651
|
+
with self.engine.connect() as conn, conn.begin():
|
652
|
+
|
653
|
+
result = conn.execute(text(sql_statement))
|
654
|
+
|
655
|
+
logger.success(f"{info} [success]")
|
656
|
+
|
657
|
+
if isinstance(save_to_csv, dict) and utils.isTrue(save_to_csv, dict):
|
658
|
+
encoding = save_to_csv.pop("encoding", "utf-8")
|
659
|
+
csv_kwargs = {"mode": "w", **save_to_csv}
|
660
|
+
with open(encoding=encoding, **csv_kwargs) as f:
|
661
|
+
return self._result_save(f, result)
|
662
|
+
|
663
|
+
return result
|
664
|
+
|
665
|
+
except Exception as e:
|
666
|
+
logger.error(f"{info} [failed]")
|
667
|
+
logger.exception(e)
|
668
|
+
return None
|
651
669
|
|
652
670
|
# ----------------------------------------------------------------------------------------------
|
653
671
|
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|