【发布时间】:2021-06-24 18:22:45
【问题描述】:
我想使用 Spark JDBC 以特定字符集编码(如 us-ascii)从 Oracle DB 读取数据,但我无法做到。
我按照answer尝试的代码:
val res=spark.read.format("jdbc")
.option("url", url)
.option("user", "userid")
.option("password", "pwd")
.option("driver","oracle.jdbc.OracleDriver")
.option("encoding", "us-ascii")
.option("characterEncoding", "us-ascii")
.option("query", tableQuery).option("fetchsize","10000")
.load()
这总是以utf-8 编码返回数据。
有没有办法做到这一点?
【问题讨论】:
-
您是否尝试过使用连接属性而不是设置未记录的 Spark 选项?类似于 Spark 的示例 github.com/apache/spark/blob/branch-3.1/examples/src/main/scala/… 中显示的内容?
-
@mazaneicha 我试过了,结果还是一样。
标签: oracle apache-spark jdbc encoding apache-spark-sql