in hugegraph-loader/src/main/java/org/apache/hugegraph/loader/reader/jdbc/JDBCUtil.java [27:78]
public static String escapeMysql(String value) {
int length = value.length();
if (!isEscapeNeededForString(value, length)) {
return '\'' + value + '\'';
}
StringBuilder buf = new StringBuilder((int) (length * 1.1D));
buf.append('\'');
for (int i = 0; i < length; ++i) {
char c = value.charAt(i);
switch (c) {
case '\u0000':
buf.append('\\');
buf.append('0');
break;
case '\n':
buf.append('\\');
buf.append('n');
break;
case '\r':
buf.append('\\');
buf.append('r');
break;
case '\u001a':
buf.append('\\');
buf.append('Z');
break;
case '"':
/*
* Doesn't need to add '\', because we wrap string with "'"
* Assume that we don't use Ansi Mode
*/
buf.append('"');
break;
case '\'':
buf.append('\\');
buf.append('\'');
break;
case '\\':
buf.append('\\');
buf.append('\\');
break;
default:
buf.append(c);
break;
}
}
buf.append('\'');
return buf.toString();
}