Skip to content

获取表结构_全部

函数名:mysql_TableStruct_All / mysql_TableStruct_All

功能描述

批量查询指定 MySQL 数据库下所有数据表的完整结构信息,返回表名、字段名、数据类型、长度、小数点、是否非空、是否虚拟列、键类型、注释等统一结构化结果。

会员等级:🟢 免费版(Free)

语法

excel
=mysql_TableStruct_All(数据库名, 连接字符串)

参数

参数名类型必填默认值说明
数据库名String-目标 MySQL 数据库名称
连接字符串String-MySQL 连接字符串(无默认值,必须传入;传入空字符串时使用已保存的默认连接)

返回值

Object[,] - 二维数组。首行为字段标题行(固定显示),后续行为各表各字段的结构信息。查询过程中单元格暂显 "Waiting..."。

使用示例

单数据库全表结构查询

公式

excel
=mysql_TableStruct_All("test","Server=127.0.0.1;Database=test;Uid=root;Pwd=123456;SslMode=None;")

结果

表名      名      类型      长度     小数点    不是null   虚拟   键    注释
user      id      int       NULL     0        是         否     PRI   用户ID
user      name    varchar   50       NULL     否         否           用户名
product   pro_id  int       NULL     0        是         否     PRI   商品ID

业务数据库结构盘点

公式

excel
=mysql_TableStruct_All("shop","Server=127.0.0.1;Database=shop;Uid=root;Pwd=root;SslMode=None;")

结果

表名      名         类型      长度     小数点    不是null   虚拟   键    注释
orders    order_id   int       NULL     0        是         否     PRI   订单ID
orders    user_id    int       NULL     0        否         否           用户ID

技术说明

  • 查询 INFORMATION_SCHEMA.COLUMNS 系统视图,条件为 TABLE_SCHEMA = @DBName,按 TABLE_NAME, ORDINAL_POSITION 排序。
  • 采用参数化查询(@DBName)防止 SQL 注入。
  • 返回列固定为:表名、名、类型、长度、小数点、不是null、虚拟、键、注释,且始终显示标题行(showHeaders=true)。
  • 通过 ExcelAsyncUtil.Run 异步执行,处理期间返回 "Waiting..."。
  • 连接字符串 为空时回退到全局默认连接 connStr;经 build_connectstring 处理默认超时与 SSL 模式。
  • 注意:本参数 连接字符串 在源代码中无默认值,调用时必须显式提供(可传入空字符串以使用默认连接)。

错误处理

错误场景返回值
数据库不存在返回空结果(无数据行)
连接字符串无效/连接失败错误: <异常信息>
异步包装层异常异常:<异常信息>

基于源代码最新版本文档