从数据块查询 window 中查询 table 架构?
Query table schema from databricks query window?
我可以 运行 简单 SQL 查询来自 table 的 select 数据,使用我工作的开发人员使用的已配置的 azure databricks 实例。我想描述一下 table 结构。但是,如果我尝试,databricks returns 会出错。 (以下)。这是因为数据块查询仅限于处理数据吗?
声明:
描述 table姓名
错误:
错误 [42000] [Microsoft][ODBC Oracle Wire Protocol 驱动程序][Oracle]ORA-00900:无效 SQL 语句
DESCRIBE TABLE
适用于在 Hive 元存储中注册的表或 Databricks 上的增量表 (Spark docs, Databricks docs) - 它可能适用于支持新目录 API 的数据源。在许多数据库中,DESCRIBE
命令在工具级别,而不是在 SQL 层 - 这就是您会收到错误的原因。
根据您访问数据库的方式,您可以尝试调用:
df = spark.read.jdbc....
df.printSchema()
但这将是 Spark 理解的模式,而不是数据库中的实际模式。另一种方法可能只是使用 JDBC API 来获取架构,类似于 answer.
我可以 运行 简单 SQL 查询来自 table 的 select 数据,使用我工作的开发人员使用的已配置的 azure databricks 实例。我想描述一下 table 结构。但是,如果我尝试,databricks returns 会出错。 (以下)。这是因为数据块查询仅限于处理数据吗?
声明: 描述 table姓名
错误: 错误 [42000] [Microsoft][ODBC Oracle Wire Protocol 驱动程序][Oracle]ORA-00900:无效 SQL 语句
DESCRIBE TABLE
适用于在 Hive 元存储中注册的表或 Databricks 上的增量表 (Spark docs, Databricks docs) - 它可能适用于支持新目录 API 的数据源。在许多数据库中,DESCRIBE
命令在工具级别,而不是在 SQL 层 - 这就是您会收到错误的原因。
根据您访问数据库的方式,您可以尝试调用:
df = spark.read.jdbc....
df.printSchema()
但这将是 Spark 理解的模式,而不是数据库中的实际模式。另一种方法可能只是使用 JDBC API 来获取架构,类似于 answer.