MCPcopy Create free account
hub / github.com/chainlit/chainlit / execute_sql

Method execute_sql

backend/chainlit/data/sql_alchemy.py:75–97  ·  view source on GitHub ↗
(
        self, query: str, parameters: dict
    )

Source from the content-addressed store, hash-verified

73
74 ###### SQL Helpers ######
75 async def execute_sql(
76 self, query: str, parameters: dict
77 ) -> Union[List[Dict[str, Any]], int, None]:
78 parameterized_query = text(query)
79 async with self.async_session() as session:
80 try:
81 await session.begin()
82 result = await session.execute(parameterized_query, parameters)
83 await session.commit()
84 if result.returns_rows:
85 json_result = [dict(row._mapping) for row in result.fetchall()]
86 clean_json_result = self.clean_result(json_result)
87 return clean_json_result
88 else:
89 return result.rowcount
90 except SQLAlchemyError as e:
91 await session.rollback()
92 logger.warn(f"An error occurred: {e}")
93 return None
94 except Exception as e:
95 await session.rollback()
96 logger.warn(f"An unexpected error occurred: {e}")
97 return None
98
99 async def get_current_timestamp(self) -> str:
100 return datetime.now().isoformat() + "Z"

Callers 12

get_userMethod · 0.95
create_userMethod · 0.95
get_thread_authorMethod · 0.95
update_threadMethod · 0.95
delete_threadMethod · 0.95
create_stepMethod · 0.95
delete_stepMethod · 0.95
upsert_feedbackMethod · 0.95
delete_feedbackMethod · 0.95
create_elementMethod · 0.95
delete_elementMethod · 0.95
get_all_user_threadsMethod · 0.95

Calls 1

clean_resultMethod · 0.95

Tested by

no test coverage detected