尝试使用包含正斜杠"/"的表从 SAP HANA 导入数据。不确定转义"/"是否有效。
我的连接尝试:
sqoop import –connect jdbc:sap://mysaphost:30015 --driver com.sap.db.jdbc.Driver --username xxxxxx --password xxxx --table xxx./xxx/xxx
生成以下错误:
2016-05-20 13:12:23,098 错误 - [main:] ~ 执行语句时出错: com.sap.db.jdbc.exceptions.JDBCDriverException: SAP DBTech JDBC: [257]: SQL 语法错误: "/" 附近的语法不正确: 第 1 行 col 24 (在 pos 24) (SqlManager:43)
com.sap.db.jdbc.exceptions.JDBCDriverException: SAP DBTech JDBC: [257]: SQL 语法错误: "/"附近的语法不正确: 第 1 行 col 24 (在 pos 24
)
为了使用带有斜杠(或其他特殊字符)的对象名称,您需要将它们括在双引号 (") 中。
由于您似乎使用命令行界面并希望将表名作为参数传递,因此您很可能必须转义这些引号。
尝试类似的东西
sqoop import –connect jdbc:sap://mysaphost:30015 --driver com.sap.db.jdbc.Driver
--username xxxxxx --password xxxx --table "xxx./xxx/xxx"
(仍然只有一行!)看看情况如何。
不确定,但也许您可以尝试用双引号 (") 将表名括起来
sqoop import –connect jdbc:sap://mysaphost:30015 --driver com.sap.db.jdbc.Driver --username xxxxxx --password xxxx --table xxx."/xxx/xxx"
你能试试类似 --table "XXX".\" XYZ\
更新到最新版本的 SAP Hana JDBC 驱动程序。