This is an automated email from the ASF dual-hosted git repository.
qiaojialin pushed a commit to branch rel/0.9
in repository https://gitbox.apache.org/repos/asf/incubator-iotdb.git
The following commit(s) were added to refs/heads/rel/0.9 by this push:
new f188200 fix export csv. (#663)
f188200 is described below
commit f1882000f78f53c49c6487298a176956b0a6da96
Author: Boris <[email protected]>
AuthorDate: Tue Dec 17 20:00:40 2019 +0800
fix export csv. (#663)
(cherry picked from commit 3965328dc3655732da9ab03864c0536face1b011)
---
.../src/main/java/org/apache/iotdb/tool/ExportCsv.java | 18 ++++++++++++++++--
1 file changed, 16 insertions(+), 2 deletions(-)
diff --git a/client/src/main/java/org/apache/iotdb/tool/ExportCsv.java
b/client/src/main/java/org/apache/iotdb/tool/ExportCsv.java
index 1a96130..eda7f37 100644
--- a/client/src/main/java/org/apache/iotdb/tool/ExportCsv.java
+++ b/client/src/main/java/org/apache/iotdb/tool/ExportCsv.java
@@ -30,9 +30,12 @@ import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
+import java.sql.Types;
import java.time.Instant;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
+import java.util.List;
import jline.console.ConsoleReader;
import org.apache.commons.cli.CommandLine;
import org.apache.commons.cli.CommandLineParser;
@@ -74,6 +77,8 @@ public class ExportCsv extends AbstractCsvTool {
private static String TIMESTAMP_PRECISION = "ms";
+ private static List<Integer> typeList = new ArrayList<>();
+
/**
* main function of export csv tool.
*/
@@ -290,6 +295,7 @@ public class ExportCsv extends AbstractCsvTool {
} else {
bw.write(metadata.getColumnLabel(i) + "\n");
}
+ typeList.add(metadata.getColumnType(i));
}
}
@@ -346,13 +352,21 @@ public class ExportCsv extends AbstractCsvTool {
if ("null".equals(rs.getString(j))) {
bw.write(",");
} else {
- bw.write(rs.getString(j) + ",");
+ if(typeList.get(j-1) == Types.VARCHAR) {
+ bw.write("\'" + rs.getString(j) + "\'"+ ",");
+ } else {
+ bw.write(rs.getString(j) + ",");
+ }
}
} else {
if ("null".equals(rs.getString(j))) {
bw.write("\n");
} else {
- bw.write(rs.getString(j) + "\n");
+ if(typeList.get(j-1) == Types.VARCHAR) {
+ bw.write("\'" + rs.getString(j) + "\'"+ "\n");
+ } else {
+ bw.write(rs.getString(j) + "\n");
+ }
}
}
}