我们正在使用带有Active Directory身份验证的Snowflake。当我们添加用于ODBC的authenticator:externalbrowser的注册表项时,每个查询/访存都会导致打开一个新的浏览器选项卡窗口以供SAML令牌使用。因此,如果我们使用的Excel工作表有10个查询,则会打开10个新的chrome标签窗口。
当我们运行Python脚本时也是如此。我们在连接命令中添加authenticator ='externalbrowser',然后脚本中的每个查询都会导致打开新的浏览器选项卡以获取SAML令牌。这当然很烦人,因为我们最终得到100个浏览器窗口标签页正在打开。
谢谢。
这是设计使然,因为您将身份验证方法指定为'externalbrowser',但是,它只为创建的每个connection打开一个新的浏览器。检查是否每个查询都建立一个新的连接对象。
您想要的是一次打开一个连接对象,然后每次需要执行查询时都使用一个来自连接的cursor对象。