我有个问题 insert into loan values('jay',21,6.2)
我将其解析为sqlnode(方解石解析器),然后使用 sqlnode.toString()
我把问题回复为 INSERT INTO "LOAN" VALUES ROW('jay',21,6.2)
. 我想删除其中的row关键字我该怎么做?还有引号
我可以使用“”替换行关键字 string.replace()
但这不是个好办法。
我也读了一些关于sqldialect的东西,但没有找到任何有用的方法。我确实试过这个
Connection connection = new DialectTest().connect();
PgDatabaseMetaData metaData = (PgDatabaseMetaData) connection.getMetaData();
SqlDialect dialect = SqlDialectFactoryImpl.INSTANCE.create(metaData);
String array = "insert into loan values('A101',30000.0,20000.0,4,'travelling',500000.0,18)";
SqlParser parser = SqlParser.create(array);
SqlNode rootNode=null;
try {
rootNode = parser.parseStmt();
} catch (SqlParseException e) {
e.printStackTrace();
}
System.out.println(rootNode.toSqlString(dialect).getSql());
结果是- INSERT INTO "LOAN" VALUES ROW('A101', 30000.0, 20000.0, 4, 'travelling', 500000.0, 18)
暂无答案!
目前还没有任何答案,快来回答吧!