From f441a5f7c15b97e2ed110926ac0cca3697674fac Mon Sep 17 00:00:00 2001 From: gaoxq <376340421@qq.com> Date: Sun, 23 Nov 2025 12:21:36 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=9C=AC=E5=9C=B0js?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/mini/capi/utils/MysqlUtils.java | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/mini/capi/utils/MysqlUtils.java b/src/main/java/com/mini/capi/utils/MysqlUtils.java index 6f884ca..727a1bf 100644 --- a/src/main/java/com/mini/capi/utils/MysqlUtils.java +++ b/src/main/java/com/mini/capi/utils/MysqlUtils.java @@ -9,9 +9,7 @@ import java.math.BigDecimal; import java.math.RoundingMode; import java.sql.*; import java.time.LocalDateTime; -import java.time.ZoneId; import java.util.*; -import java.util.Date; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -43,10 +41,6 @@ public class MysqlUtils { /** * 获取指定MySQL连接的所有非系统库表结构信息 * - * @param ip MySQL服务器IP - * @param port 端口(默认3306) - * @param username 用户名 - * @param password 密码 * @return 数据库名 -> 表信息列表(包含字段)的映射 * @throws Exception 连接或查询异常 */ @@ -135,7 +129,7 @@ public class MysqlUtils { private static List getFieldsByTable(Connection conn, String dbName, String tableName) throws SQLException { List fields = new ArrayList<>(); String fieldSql = "SELECT " + - "TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME, COLUMN_TYPE, COLUMN_COMMENT, " + + "TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME,DATA_TYPE, COLUMN_TYPE, COLUMN_COMMENT, " + "ORDINAL_POSITION, CHARACTER_MAXIMUM_LENGTH " + "FROM COLUMNS WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ? " + "ORDER BY ORDINAL_POSITION"; @@ -160,13 +154,12 @@ public class MysqlUtils { field.setDataSource(fieldRs.getString("TABLE_SCHEMA")); field.setDataName(fieldRs.getString("TABLE_NAME")); field.setFieldName(fieldRs.getString("COLUMN_NAME")); - String fieldType = fieldRs.getString("COLUMN_TYPE"); - field.setFieldType(fieldType); + field.setFieldType(fieldRs.getString("DATA_TYPE")); field.setFieldOrder(fieldRs.getInt("ORDINAL_POSITION")); field.setFieldRemark(fieldRs.getString("COLUMN_COMMENT")); Long length = fieldRs.getLong("CHARACTER_MAXIMUM_LENGTH"); if (length == 0 || fieldRs.wasNull()) { - length = extractLengthFromType(fieldType); + length = extractLengthFromType(fieldRs.getString("COLUMN_TYPE")); } field.setFieldLength(length); field.setCreateTime(LocalDateTime.now());