在 databricks sql 连接参数中指定数据库名称
specify a database name in databricks sql connection parameters
我正在使用 airflow 2.0.2 通过 airflow-databricks-operator 连接数据块。 SQL 运算符不允许我指定执行查询的数据库,因此我必须在 table_name
前加上 database_name
前缀。我也尝试阅读 databricks-sql-connector 的文档——https://docs.databricks.com/dev-tools/python-sql-connector.html,但仍然无法确定是否可以将数据库名称作为连接字符串本身的参数。
我尝试在 **kwargs
中设置 database/schema/namespace
,但没有成功。查询执行器一直说找不到 table,因为查询一直在默认数据库中执行。
目前不支持 - 主要原因是如果您有多个语句,那么连接器可能会在它们执行之间重新连接,并且 use
的结果将会丢失。 databricks-sql-connector
也不允许设置默认数据库。
现在您可以解决这个问题,方法是将显式 use <database>
语句添加到要执行的 SQL 列表中(sql
参数可以是字符串列表,而不仅仅是字符串)。
P.S。我会看看,也许我会在下一个版本
中添加默认catalog/database的设置
我正在使用 airflow 2.0.2 通过 airflow-databricks-operator 连接数据块。 SQL 运算符不允许我指定执行查询的数据库,因此我必须在 table_name
前加上 database_name
前缀。我也尝试阅读 databricks-sql-connector 的文档——https://docs.databricks.com/dev-tools/python-sql-connector.html,但仍然无法确定是否可以将数据库名称作为连接字符串本身的参数。
我尝试在 **kwargs
中设置 database/schema/namespace
,但没有成功。查询执行器一直说找不到 table,因为查询一直在默认数据库中执行。
目前不支持 - 主要原因是如果您有多个语句,那么连接器可能会在它们执行之间重新连接,并且 use
的结果将会丢失。 databricks-sql-connector
也不允许设置默认数据库。
现在您可以解决这个问题,方法是将显式 use <database>
语句添加到要执行的 SQL 列表中(sql
参数可以是字符串列表,而不仅仅是字符串)。
P.S。我会看看,也许我会在下一个版本
中添加默认catalog/database的设置