Files
TJWaterServerBinary/postgresql/scada_info.py

36 lines
1.1 KiB
Python

from typing import List, Optional, Any
from psycopg import AsyncConnection
class ScadaRepository:
@staticmethod
async def get_scadas_info(conn: AsyncConnection) -> List[dict]:
"""
查询pg数据库中,scada_info 的所有记录
:param conn: 异步数据库连接
:return: 包含所有记录的列表,每条记录为一个字典
"""
async with conn.cursor() as cur:
await cur.execute(
"""
SELECT id, type, transmission_mode, transmission_frequency, reliability
FROM public.scada_info
"""
)
records = await cur.fetchall()
# 将查询结果转换为字典列表
records_list = []
for record in records:
record_dict = {
"id": record[0],
"type": record[1],
"transmission_mode": record[2],
"transmission_frequency": record[3],
"reliability": record[4],
}
records_list.append(record_dict)
return records_list