我需要在sql语句中连接两个字段,并且我在使用JDBC的Java应用程序中对MySQL和sqlite使用相同的句子.
事实证明MysqL和sqlite都有不同且不兼容的concat运算符:
> MysqL使用“CONCAT(smth,smth)”
> sqlite使用“smth || smth”.
到目前为止,我已经设法为两个DB使用相同的句子,所以现在我需要一种方法来找到独立于MysqL和sqlite的concat运算符;如果句子将在MysqL或sqlite中执行,则在我的java应用程序中动态检测.
我也可以在我的java方法中添加一个参数,一个包含SQL查询的方法,知道我是使用MysqL还是sqlite,但我真的不喜欢这个最后的解决方案.
你们有没有想过如何建立一个独立的concat运算符?或任何其他想法?
谢谢.
解决方法:
您可以使用MysqL端的模式PIPES_AS_CONCAT来创建||表现与sqlite相似.有关其他信息,另请参见this article
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。