在
RuoYi-Vue-Plus
框架中,基于mybatis-plus
,框架几乎完全支持市场上主流的数据库,这使得与不同数据库的对接变得十分便捷,尤其是针对国产数据库的适配与兼容也不必担心出现大的问题。框架本身没有大量的 SQL 语句存在,因此兼容性问题大多集中在少量的SQL
关键字上。
多数国产数据库对标并兼容主流的三大数据库系统(MySQL
、Oracle
、PostgreSQL
),如达梦数据库兼容 Oracle
,人大金仓数据库兼容 MySQL
,OceanBase
也兼容 MySQL
。因此,接入这些数据库变得非常简单,只需少量调整。
达梦
数据库为例在 RuoYi-Vue
框架中,vue
版本需要在 ruoyi-admin
模块中增加 JDBC 依赖;而 cloud
版本则需要在 ruoyi-common-mybatis
模块下添加。
<!-- 达梦数据库依赖 -->
<dependency>
<groupId>com.dameng</groupId>
<artifactId>DmJdbcDriver18</artifactId>
<version>8.1.0</version>
</dependency>
在 application.yml
文件中配置数据库连接信息。以达梦数据库为例:
spring:
datasource:
driver-class-name: dm.jdbc.driver.DmDriver
url: jdbc:dm://127.0.0.1:5236/DMSERVER
username: root
password: 123456
RuoYi-Vue-Plus
框架自带多种 SQL 脚本,针对不同数据库可以选择相应的兼容模式。例如,达梦数据库可以直接使用 Oracle
的 SQL 脚本进行初始化。找到框架自带的 SQL 文件,执行适合达梦数据库的脚本即可。
框架中的代码生成器支持对接多种数据库,只需引入相应的依赖即可。RuoYi-Vue-Plus
中使用了 anyline
代码生成器,它支持几百种数据库的生成,只需在项目中引入相应的依赖包。
<!-- 代码生成器 anyline 支持达梦数据库 -->
<dependency>
<groupId>org.anyline</groupId>
<artifactId>anyline-data-jdbc-dm</artifactId>
<version>${anyline.version}</version>
</dependency>
配置完成后,即可生成与达梦数据库兼容的代码。
在项目启动或运行过程中,如果遇到 SQL 错误,通常是由于某些数据库关键字冲突引起的。例如,达梦数据库中的 domain
是一个保留关键字,而框架中的 SysOssConfig
表中正好使用了 domain
字段用于自定义域名存储。
为了解决这个冲突问题,只需在 SysOssConfig
实体类中的 domain
属性上添加注解,指定数据库在生成 SQL 时自动加上引号。
import com.baomidou.mybatisplus.annotation.TableField;
public class SysOssConfig {
@TableField("`domain`")
private String domain;
}
注意:不同数据库对关键字的处理方式可能有所不同,请根据具体情况添加适当的标识符。
通过上述步骤,可以轻松将 RuoYi-Vue-Plus
与国产数据库对接。无论是增加 JDBC
依赖、配置连接信息,还是解决关键字冲突,整个过程相对简单直观。如果在项目运行过程中遇到问题,及时检查 SQL
脚本和关键字处理方式,往往可以快速解决。
powered by kaifamiao