I got an oracle table with lower case character in table name and column name:
CREATE TABLE "MINER_DEMO"."golf_cap_col"(outlook VARCHAR2(32), temperature
integer,humidity integer,wind VARCHAR2(32), “play" VARCHAR2(32)) ;
INSERT INTO "MINER_DEMO"."golf_cap_col"( outlook, temperature, humidity, wind,
“play") VALUES ('sunny', 80, 81, 'false', 'no’)
So when I run this
./sqoop import --connect jdbc:oracle:thin:@192.168.1.28:1521/xe --username
miner_demo --password miner_demo --table MINER_DEMO.golf_cap_col --username
miner_demo --password miner_demo --connection-manager
org.apache.sqoop.manager.OracleManager -m 1
It will throw the following error :
14/02/17 17:04:21 INFO manager.SqlManager: Executing SQL statement: SELECT t.*
FROM MINER_DEMO.golf_cap_col t WHERE 1=0
14/02/17 17:04:21 ERROR manager.SqlManager: Error executing statement:
java.sql.SQLSyntaxErrorException: ORA-00942: table or view does not exist
java.sql.SQLSyntaxErrorException: ORA-00942: table or view does not exist
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:439)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:395)
If I run the command with --table "MINER_DEMO".”golf_cap_col”, it will throw
the same error .
If I run it with --table \"\"MINER_DEMO\".\”golf_cap_col\"\” , it shows the
following error :
./sqoop import --connect jdbc:oracle:thin:@192.168.1.28:1521/xe --username
miner_demo --password miner_demo --table \"\"MINER_DEMO\".\"golf_cap_col\"\"
--username miner_demo --password miner_demo --connection-manager
org.apache.sqoop.manager.OracleManager -m 1
....
14/02/17 17:00:01 INFO manager.SqlManager: Executing SQL statement: SELECT t.*
FROM "MINER_DEMO"."golf_cap_col" t WHERE 1=0
14/02/17 17:00:01 ERROR tool.ImportTool: Imported Failed: Attempted to generate
class with no columns!
Also the same issue happens in export command.
So, as I tried every way I can think, it still does not work. Does anyone know
how to handle it?
Thanks.
John Zhao