当前位置:  开发笔记 > 编程语言 > 正文

寻找可嵌入的SQL美化器或重新格式化器

如何解决《寻找可嵌入的SQL美化器或重新格式化器》经验,为你挑选了3个好方法。

我正在寻找一个Java开源美化器或SQL的重新格式化程序,我可以用它来清理我用openArchitectureWare生成的DDL语句.

" Online Code Beautifier和Formatter " 的答案中没有任何内容对我有用,我无法让Simple SQL Formatter为我工作.



1> Robert J. Wa..:

更新2:

org.hibernate.jdbc.util.BasicFormatterImpl在4.0版本中被移动了.它现在位于:org.hibernate.engine.jdbc.internal.BasicFormatterImpl.

更新1:

技术进步.正如Alex所述,org.hibernate.pretty.Formatter从版本3.3.2.GA开始不再存在.替换是org.hibernate.jdbc.util.BasicFormatterImpl:

String formattedSQL = new BasicFormatterImpl().format(sql);

原始答案:

如果你正在使用Hibernate,他们有一个内置的: org.hibernate.pretty.Formatter

String formattedSQL = new Formatter(sql).format();


我创建了一个独立的SQL更美妙的工具,它使用`BasicFormatterImpl`和`DDLFormatterImpl`.https://github.com/lbtc-xxx/sql-beautifulier

2> Stephen Denn..:

eclipse 数据工具平台的一部分是SQL开发工具项目.

描述如何使用SQL Query Parser的页面非常简单地使用了SQLQuerySourceFormat,它提供了以下选项:

preserveSourceFormat =在生成SQL源文本时保留输入源格式的选项

statementTerminator =分隔多个SQL语句的字符

hostVariablePrefix =主机语言变量之前的字符

parameterMarker =标识主机语言参数的字符

delimitedIdentifierQuote*=包含分隔标识符的字符,其大小写将保留

omitSchema =当前架构(在SQL源中省略,对非限定表引用是隐式的)

qualifyIdentifiers =描述如何限定SQL源中的标识符的标志

preserveComments =在已解析的SQL源或/和生成的SQL源中保留注释的选项

generateCommentsForStatementOnly =仅在完整语句的上下文中为SQL源生成注释的选项,或者如果设置为false,则对于语句的上下文之外的单个SQL查询对象也是如此



3> Stephan..:

使用Hibernate v3.3.2.GA,org.hibernate.pretty.Formatter不再存在.您可以使用它的替换:org.hibernate.jdbc.util.BasicFormatterImpl

Formatter f = new BasicFormatterImpl();
String formatted_sql_code = f.format(ugly_sql_code);

推荐阅读
夏晶阳--艺术
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有