You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Snowpark调用Session.sql()报错:缺少必填位置参数'query'

解决Snowpark中sql() missing 1 required positional argument: 'query'错误

问题原因

你直接通过Session类调用了sql()方法,但sql()是实例方法,必须通过已创建的Session实例来调用,而非类本身。直接用类调用时,Python会把Session类作为第一个参数传入(对应方法里的self),导致原本需要的query参数缺失,触发报错。

修复后的代码

在Snowflake Python Worksheet中,无需手动配置连接参数,直接获取当前活跃会话即可:

# The Snowpark package is required for Python Worksheets. 
# You can add more packages by selecting them using the Packages control and then importing them.

import snowflake.snowpark as snowpark
from snowflake.snowpark.functions import col
from snowflake.snowpark.session import Session

# 获取当前活跃会话
session = Session.get_active_session()
# 通过会话实例调用sql方法
df = session.sql('select * from snowflake_sample_data.tpch_sf10.lineitem')

本地环境额外说明

如果是在本地环境而非Worksheet中使用Snowpark,需要先通过配置参数创建Session实例:

connection_params = {
    "account": "你的账户名",
    "user": "你的用户名",
    "password": "你的密码",
    "warehouse": "你的仓库",
    "database": "你的数据库",
    "schema": "你的模式",
    "role": "你的角色"
}
session = Session.builder.configs(connection_params).create()
df = session.sql('select * from snowflake_sample_data.tpch_sf10.lineitem')

内容的提问来源于stack exchange,提问作者Patterson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 01:45:03