如何在Streamlit中执行Snowflake数据库SQL查询并展示结果
解决Streamlit中展示Snowflake权限查询结果的问题
直接把Snowflake查询结果转换成Pandas DataFrame,再用Streamlit的表格组件展示即可,具体步骤如下:
- 执行查询并转换为DataFrame:Snowflake的
session.sql()返回的是Result对象,调用.to_pandas()方法就能转换成Streamlit兼容的DataFrame格式。 - 使用Streamlit组件展示:根据需求选择交互式的
st.dataframe()或静态的st.table(),数据量较大时可以用折叠面板优化展示。
完整代码示例
# 执行权限查询并转为DataFrame grants_result = session.sql("""SHOW GRANTS TO USER "John.doe@hotmail.com"; """).to_pandas() # 展示查询结果 st.subheader("用户权限详情") # 交互式表格(支持排序、筛选) st.dataframe(grants_result) # 可选:用折叠面板包裹大量数据 # with st.expander("展开查看完整权限列表"): # st.dataframe(grants_result)
执行后你就能看到包含GRANTED_TO、ROLE、PRIVILEGE等字段的权限列表,Streamlit会自动渲染成可交互的表格(如果用st.dataframe)。
内容的提问来源于stack exchange,提问作者RMC_DEV
相关产品推荐
相关产品推荐

