Ich verwende Sqoop, um Daten vom SQL Server in das lokale HDFS zu importieren. Ich verwende eine einfache freie Form Abfrage, um einige 10 Zeilen aus der Tabelle zu ziehen. Unten ist der Sqoop Befehl, den ich aus dem Terminal ausführen:Index liegt außerhalb des gültigen Bereichs: JDBC SqlServer exception
sqoop import --connect 'jdbc:sqlserver://xx.xx.xx.xx;username=xx;password=xxxxx;database=DBName' --query "SELECT top 10 OrderID from DJShopcart_OrderItems where \$CONDITIONS" --split-by "OrderID" --target-dir /work/gearpurchase
Als ich das von meinem lokalen Rechner ausführen, bekomme ich die folgende Ausnahme:
Verursacht durch: com.microsoft.sqlserver.jdbc .SQLServerException: Der Index 2 liegt außerhalb des zulässigen Bereichs. bei com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError (SQLServerException.java:191) bei com.microsoft.sqlserver.jdbc.SQLServerResultSet.verifyValidColumnIndex (SQLServerResultSet.java:543) bei com.microsoft.sqlserver. jdbc.SQLServerResultSet.getterGetColumn (SQLServerResultSet.java:2066) bei com.microsoft.sqlserver.jdbc.SQLServerResultSet.getValue (SQLServerResultSet.java:2099) bei com.microsoft.sqlserver.jdbc.SQLServerResultSet.getValue (SQLServerResultSet. java: 2084) um com.microsoft.sqlserver.jdbc.SQLServerResultSet.getInt (SQLServerResultSet.java:2327) um org.apa che.sqoop.lib.JdbcWritableBridge.readInteger (JdbcWritableBridge.java:52) bei com.cloudera.sqoop.lib.JdbcWritableBridge.readInteger (JdbcWritableBridge.java:53) bei QueryResult.readFields (QueryResult.java:105) bei org.apache.sqoop.mapreduce.db.DBRecordReader.nextKeyValue (DBRecordReader.java:244)
Wenn ich 2 Spalten importieren, sagt die Ausnahme 3-Index außerhalb des Bereichs liegt.
Ich überprüfte die SQLServerResultSet Klassendokumentation auch, um zu verstehen, was die Ursache der Ausnahme sein konnte, aber zu keiner Verwendung. Nur mehr mit Konzepten wie Client-Side Cursor vs Server-Side Cursor verwirrt
Egal, was ich versuche, kann ich nicht erhalten diese einfache freie Form Abfrage Daten von SQL-Server zu importieren.
Sqoop version : 1.4.6
Hadoop : 2.7.3
Machine : Ubuntu 16.04
Bitte helfen Sie mir. Danke im Voraus.