diff --git a/magic-api/src/main/java/org/ssssssss/magicapi/adapter/DialectAdapter.java b/magic-api/src/main/java/org/ssssssss/magicapi/adapter/DialectAdapter.java index 7760fb3a..f226ef43 100644 --- a/magic-api/src/main/java/org/ssssssss/magicapi/adapter/DialectAdapter.java +++ b/magic-api/src/main/java/org/ssssssss/magicapi/adapter/DialectAdapter.java @@ -24,6 +24,7 @@ public class DialectAdapter { add(new SQLServerDialect()); add(new SQLServer2005Dialect()); add(new DmDialect()); + add(new KingbaseSQLDialect()); } public void add(Dialect dialect) { diff --git a/magic-api/src/main/java/org/ssssssss/magicapi/dialect/KingBaseSQLDialect.java b/magic-api/src/main/java/org/ssssssss/magicapi/dialect/KingBaseSQLDialect.java new file mode 100644 index 00000000..5b2e3949 --- /dev/null +++ b/magic-api/src/main/java/org/ssssssss/magicapi/dialect/KingBaseSQLDialect.java @@ -0,0 +1,18 @@ +package org.ssssssss.magicapi.dialect; + + +import org.ssssssss.magicapi.modules.BoundSql; + +public class KingbaseSQLDialect implements Dialect { + @Override + public boolean match(String jdbcUrl) { + return jdbcUrl.contains(":kingbase8:"); + } + + @Override + public String getPageSql(String sql, BoundSql boundSql, long offset, long limit) { + boundSql.addParameter(limit); + boundSql.addParameter(offset); + return sql + " limit ? offset ?"; + } +}