Pandas 带有 Snowflake Python 连接器的数据帧

Pandas Dataframes with the Snowflake Python Connector

尝试获取数据查询以使用其连接器与 Snowflake 一起使用。

import snowflake.connector as sf
import pandas as pd
import sys

ctx = sf.connect(
    user='<user>',
    password='<password>',
    account='<account>',
    warehouse='<warehouse?',
    database='<db>',
    schema='<schema>',
    )
cs = ctx.cursor()

try:
    cs.execute('select TOP 5 fish, price from fishtable order by fish;')
except Exception as error:
    error = sys.exc_info()[0]
    message = sys.exc_info()[1]
    print(f"Error: {error}\nMessage: {message}")
finally:
    ctx.close()
    
print(cs.rowcount)
print(cs.sfqid)
df = cs.fetch_pandas_all()   #could not get this to work
df

print(cs.rowcount) 显示正确的总数为 5。

在雪花控制台中使用 sfqid returns 查询结果符合预期。

但是DF中没有数据...

赋值应该在closing/disposing连接之前完成:

try:
    cs.execute('select TOP 5 fish, price from fishtable order by fish;')
    df = cs.fetch_pandas_all() 
except Exception as error:
    error = sys.exc_info()[0]
    message = sys.exc_info()[1]
    print(f"Error: {error}\nMessage: {message}")
finally:
    ctx.close()

df