统一 pg 数据库的连接

This commit is contained in:
JIANG
2025-11-26 10:10:00 +08:00
parent 15d9476858
commit 5ab10886a0
5 changed files with 44 additions and 24 deletions

View File

@@ -19,6 +19,7 @@ import logging
import globals
import uuid
import project_info
from postgresql_info import get_pgconn_string
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
@@ -30,7 +31,7 @@ def query_corresponding_element_id_and_query_id(name: str) -> None:
:return:
"""
# 连接数据库
conn_string = f"dbname={name} host=127.0.0.1"
conn_string = get_pgconn_string(db_name=name)
try:
with psycopg.connect(conn_string) as conn:
with conn.cursor() as cur:
@@ -73,7 +74,7 @@ def query_corresponding_pattern_id_and_query_id(name: str) -> None:
:return:
"""
# 连接数据库
conn_string = f"dbname={name} host=127.0.0.1"
conn_string = get_pgconn_string(db_name=name)
try:
with psycopg.connect(conn_string) as conn:
with conn.cursor() as cur:
@@ -107,7 +108,7 @@ def query_non_realtime_region(name: str) -> dict:
"""
source_outflow_regions = [] # 用于存储所有 region包含重复的
# 构建连接字符串
conn_string = f"dbname={name} host=127.0.0.1"
conn_string = get_pgconn_string(db_name=name)
try:
# 连接到数据库
with psycopg.connect(conn_string) as conn:
@@ -165,7 +166,7 @@ def query_non_realtime_region_patterns(name: str, source_outflow_region: dict, c
"""
globals.non_realtime_region_patterns = {region: [] for region in globals.source_outflow_region.keys()}
region_tuple_to_key = {frozenset(ids): region for region, ids in globals.source_outflow_region.items()}
conn_string = f"dbname={name} host=127.0.0.1"
conn_string = get_pgconn_string(db_name=name)
try:
with psycopg.connect(conn_string) as conn:
with conn.cursor() as cur:
@@ -226,7 +227,7 @@ def query_realtime_region_pipe_flow_and_demand_id(name: str, source_outflow_regi
globals.realtime_region_pipe_flow_and_demand_id = {region: [] for region in globals.source_outflow_region.keys()}
# 创建一个映射,从 frozenset(ids) 到 region_key
region_tuple_to_key = {frozenset(ids): region for region, ids in globals.source_outflow_region.items()}
conn_string = f"dbname={name} host=127.0.0.1"
conn_string = get_pgconn_string(db_name=name)
try:
with psycopg.connect(conn_string) as conn:
with conn.cursor() as cur:
@@ -283,7 +284,7 @@ def query_pipe_flow_region_patterns(name: str, column_prefix: str = 'associated_
:param column_prefix: 需要提取的列的前缀
:return: pipe_flow_region_patterns 字典
"""
conn_string = f"dbname={name} host=127.0.0.1"
conn_string = get_pgconn_string(db_name=name)
try:
with psycopg.connect(conn_string) as conn:
with conn.cursor() as cur:
@@ -334,7 +335,7 @@ def query_SCADA_ID_corresponding_info(name: str, SCADA_ID: str) -> dict:
:param SCADA_ID: SCADA设备的ID
:return: 包含associated_element_id和api_query_id的字典
"""
conn_string = f"dbname={name} host=127.0.0.1"
conn_string = get_pgconn_string(db_name=name)
try:
# 使用 psycopg.connect 创建连接
with psycopg.connect(conn_string) as conn:
@@ -383,7 +384,7 @@ def get_source_outflow_region_id(name: str, source_outflow_region: dict,
if not all_ids:
logging.warning("No associated_source_outflow_id found in source_outflow_region.")
return globals.source_outflow_region_id
conn_string = f"dbname={name} host=127.0.0.1"
conn_string = get_pgconn_string(db_name=name)
try:
with psycopg.connect(conn_string) as conn:
with conn.cursor() as cur:
@@ -431,7 +432,7 @@ def get_realtime_region_patterns(name: str, source_outflow_region_id: dict, real
globals.source_outflow_region_patterns = {region: [] for region in globals.source_outflow_region_id.keys()}
globals.realtime_region_pipe_flow_and_demand_patterns = {region: [] for region in
globals.realtime_region_pipe_flow_and_demand_id.keys()}
conn_string = f"dbname={name} host=127.0.0.1"
conn_string = get_pgconn_string(db_name=name)
try:
with psycopg.connect(conn_string) as conn:
with conn.cursor() as cur: