postgresql已知问题修复
postgresql支持表数据页面直接修改数据
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
package com.zyplayer.doc.db.service.database;
|
||||
|
||||
import com.zyplayer.doc.db.controller.param.DataViewParam;
|
||||
import com.zyplayer.doc.db.framework.db.enums.DatabaseProductEnum;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
@@ -16,4 +18,38 @@ public class PostgresqlServiceImpl extends DbBaseService {
|
||||
public DatabaseProductEnum getDatabaseProduct() {
|
||||
return DatabaseProductEnum.POSTGRESQL;
|
||||
}
|
||||
|
||||
/**
|
||||
* Postgresql中没有use语句,指定数据库名的情况下直接返回空即可
|
||||
* @author diantu
|
||||
* @since 2023-06-20
|
||||
*/
|
||||
@Override
|
||||
public String getUseDbSql(String dbName) {
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取分页查询的SQL
|
||||
*
|
||||
* @return 分页查询的SQL
|
||||
* @author diantu
|
||||
* @since 2023年6月20日
|
||||
*/
|
||||
@Override
|
||||
public String getQueryPageSql(DataViewParam dataViewParam) {
|
||||
String queryColumns = StringUtils.defaultIfBlank(dataViewParam.getRetainColumn(), "*");
|
||||
StringBuilder sqlSb = new StringBuilder();
|
||||
//postgresql记录的ctid会随着update变化,与oracle中的伪列有本质区别(oracle,达梦里的rowid可以理解成持久化数据)
|
||||
//TODO 在高并发下依赖ctid修改数据可能会有业务逻辑问题
|
||||
sqlSb.append(String.format("select cast(ctid as varchar) as ZYPLAYDBCTID,%s from %s.%s", queryColumns, dataViewParam.getDbName(), dataViewParam.getTableName()));
|
||||
if (StringUtils.isNotBlank(dataViewParam.getCondition())) {
|
||||
sqlSb.append(String.format(" where %s", dataViewParam.getCondition()));
|
||||
}
|
||||
if (StringUtils.isNotBlank(dataViewParam.getOrderColumn()) && StringUtils.isNotBlank(dataViewParam.getOrderType())) {
|
||||
sqlSb.append(String.format(" order by %s %s", dataViewParam.getOrderColumn(), dataViewParam.getOrderType()));
|
||||
}
|
||||
sqlSb.append(String.format(" limit %s offset %s", dataViewParam.getPageSize(), dataViewParam.getOffset()));
|
||||
return sqlSb.toString();
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="favicon-db.png"><title>数据库文档管理</title><link href="css/chunk-vendors.be60d3b3.css" rel="preload" as="style"><link href="css/index.535cd330.css" rel="preload" as="style"><link href="js/chunk-vendors.7871ff07.js" rel="preload" as="script"><link href="js/index.bdeb7df4.js" rel="preload" as="script"><link href="css/chunk-vendors.be60d3b3.css" rel="stylesheet"><link href="css/index.535cd330.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but zyplayer-db-ui doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div><script src="js/chunk-vendors.7871ff07.js"></script><script src="js/index.bdeb7df4.js"></script></body></html>
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="favicon-db.png"><title>数据库文档管理</title><link href="css/chunk-vendors.be60d3b3.css" rel="preload" as="style"><link href="css/index.dd934fd5.css" rel="preload" as="style"><link href="js/chunk-vendors.7871ff07.js" rel="preload" as="script"><link href="js/index.75921495.js" rel="preload" as="script"><link href="css/chunk-vendors.be60d3b3.css" rel="stylesheet"><link href="css/index.dd934fd5.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but zyplayer-db-ui doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div><script src="js/chunk-vendors.7871ff07.js"></script><script src="js/index.75921495.js"></script></body></html>
|
||||
1
zyplayer-doc-db/src/main/resources/dist/js/index.75921495.js
vendored
Normal file
1
zyplayer-doc-db/src/main/resources/dist/js/index.75921495.js
vendored
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user