mysql – SQL:如何使独立于DB的concant查询

我需要在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

相关文章

SQLite架构简单,又有Json计算能力,有时会承担Json文件/RES...
使用Python操作内置数据库SQLite以及MySQL数据库。
破解微信数据库密码,用python导出微信聊天记录
(Unity)SQLite 是一个软件库,实现了自给自足的、无服务器...
安卓开发,利用SQLite实现登陆注册功能