获取表结构_全部
函数名: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 模式。- 注意:本参数
连接字符串在源代码中无默认值,调用时必须显式提供(可传入空字符串以使用默认连接)。
错误处理
| 错误场景 | 返回值 |
|---|---|
| 数据库不存在 | 返回空结果(无数据行) |
| 连接字符串无效/连接失败 | 错误: <异常信息> |
| 异步包装层异常 | 异常:<异常信息> |