首页 > 解决方案 > SAP DBTech JDBC:[288](在 22):不能使用重复的表名:

问题描述

对不起英语不好

我正在使用 JDBC 将数据从 spark 写入 sap 数据库,这是一个错误:

py4j.protocol.Py4JJavaError: An error occurred while calling o136.jdbc.
: com.sap.db.jdbc.exceptions.JDBCDriverException: SAP DBTech JDBC: [288] (at 22)
: cannot use duplicate table name: ZAT_BH : line 1 col 23 (at pos 22)

但是使用 SQL likeinsert into SAPA.ZAT_BH values('a','b')是可以的

我的脚本是

url = 'jdbc:sap://10.0.0.1:30015/?currentschema=SAPA'
user = 'user'
user_name = 'userA'
password = 'password'
password_content = 'passwordA'
driver = 'driver'
driver_name = 'com.sap.db.jdbc.Driver'
target_table_name ='SAPA.ZAT_BH'

df.write.mode("Append").jdbc(url,target_table_name,properties={user: user_name,
                                                     password: password_content,
                                                     driver: driver_name
                                                     }
                                )

标签: apache-sparkjdbcsap

解决方案


推荐阅读