0

我尝试连接雪花(SSO 身份验证)并从表中获取数据。但是,当我运行代码时,我可以在弹出的浏览器窗口中使用我的凭据登录并连接雪花,之后没有响应(程序既不终止也不提供结果)。不确定,在哪里做错了,请帮忙。

'''

import snowflake.connector
# Connecting to Snowflake using SAML 2.0-compliant IdP federated authentication
conn = snowflake.connector.connect(
  user='G*****K',
  account='abcdf',
  authenticator='externalbrowser',
  warehouse='abcdf',
  database='abcdf',
  schema='abcdf'
)
cur = conn.cursor()
sql = "select * from abcdf.ACCT limit 10"
x=cur.execute(sql)
cur.close()
print(x) 
'''
4

2 回答 2

0

查询结果存储在游标中。然后可以将游标的内容存储在局部变量中。

此外,最后关闭连接的最佳实践。

https://www.psycopg.org/docs/cursor.html

import snowflake.connector
# Connecting to Snowflake using SAML 2.0-compliant IdP federated authentication
conn = snowflake.connector.connect(
  user='G*****K',
  account='abcdf',
  authenticator='externalbrowser',
  warehouse='abcdf',
  database='abcdf',
  schema='abcdf'
)
cur = conn.cursor()
sql = "select * from abcdf.ACCT limit 10"
cur.execute(sql)
print(cur.fetchall())
cur.close()
conn.close()
于 2020-12-30T13:39:10.747 回答
0

我相信您在打印之前关闭了光标;

    try:
    cur.execute("SELECT col1, col2 FROM test_table ORDER BY col1")
    for (col1, col2) in cur:
        print('{0}, {1}'.format(col1, col2))
    finally:
    cur.close() 

详细信息:https ://docs.snowflake.com/en/user-guide/python-connector-example.html#using-cursor-to-fetch-values

于 2020-05-28T14:04:14.123 回答