> ## Documentation Index
> Fetch the complete documentation index at: https://help.teable.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 通过 SQL 访问表格数据（已弃用）

<Tip>
  **仅适用于私有化部署**：无连接数限制。
</Tip>

Teable 允许您通过外部工具连接底层 PostgreSQL 数据库进行只读查询。支持 BI 工具（PowerBI、Metabase、Superset）、数据库客户端（DataGrip、Navicat、TablePlus）、低代码平台（Appsmith、Budibase）以及应用程序代码。

### 创建数据库连接

1. **进入表格**：首先，打开您想要连接的数据库中的任意一个表格。
2. **进入设计页面**：点击右上角的 ⚙️ 图标，进入数据库设计页面。

<img src="https://mintcdn.com/teablecn/NP3JGKBG3IReJDnF/images/api/sql-query/2026-05-29-sql-query-open-design-page-zh.png?fit=max&auto=format&n=NP3JGKBG3IReJDnF&q=85&s=35c7446db4e262765f3445509c1e271b" alt="进入数据库设计页面" className="docs-screenshot" width="700" height="222" data-path="images/api/sql-query/2026-05-29-sql-query-open-design-page-zh.png" />

3. **找到数据库连接面板**：在设计页面中，找到「数据库连接」面板。
4. **创建连接**：点击创建，系统将自动生成一个只读的 PostgreSQL 连接，包括用户名、密码和连接地址。

<img src="https://mintcdn.com/teablecn/NP3JGKBG3IReJDnF/images/api/sql-query/2026-05-29-sql-query-database-connection-panel-zh.png?fit=max&auto=format&n=NP3JGKBG3IReJDnF&q=85&s=3c3aa9df909704b9c7ac6abe290f65e4" alt="数据库连接面板" className="docs-screenshot" width="2440" height="808" data-path="images/api/sql-query/2026-05-29-sql-query-database-connection-panel-zh.png" />

### 连接数据库

使用获取的凭证通过您喜欢的工具进行连接，示例如下：

<img src="https://mintcdn.com/teablecn/NP3JGKBG3IReJDnF/images/api/sql-query/2026-05-29-sql-query-connection-example.png?fit=max&auto=format&n=NP3JGKBG3IReJDnF&q=85&s=9ee530fa0ab3ec886dd7ce50489e9798" alt="外部数据库连接示例" className="docs-screenshot" width="1540" height="1050" data-path="images/api/sql-query/2026-05-29-sql-query-connection-example.png" />

### 查询数据

连接成功后，您可以使用 SQL 查询数据：

```sql theme={null}
SELECT * FROM "bseamGnQT65TVSCzIaC"."clients" LIMIT 100
```

**注意**：在 PostgreSQL 中，必须使用双引号 `"` 将 schema 和表名包裹起来以保持大小写敏感。

编写查询语句需要知道以下三个信息：

* **Schema 名称（数据库ID）**：以 `bse` 开头的数据库标识符
* **表名**：PostgreSQL 中的物理表名
* **字段名**：数据库中的实际列名

以下章节将说明如何获取这些信息。

### 获取数据库 ID（BaseId / Schema 名称）

Teable 中的每个数据库（Base）对应 PostgreSQL 中的一个 **schema**。BaseId 就是 SQL 查询中使用的 schema 名称。

**方法一**：查看 URL，以 `bse` 开头的字符串就是 BaseId。

<img src="https://mintcdn.com/teablecn/NP3JGKBG3IReJDnF/images/api/sql-query/2026-05-29-sql-query-base-id-url.png?fit=max&auto=format&n=NP3JGKBG3IReJDnF&q=85&s=e7df85acc157c3313cc2ce906245e825" alt="URL 中的数据库 ID" className="docs-screenshot" width="1356" height="186" data-path="images/api/sql-query/2026-05-29-sql-query-base-id-url.png" />

**方法二**：在数据库设计界面中，显示的 schema 名就是 BaseId。

<img src="https://mintcdn.com/teablecn/NP3JGKBG3IReJDnF/images/api/sql-query/2026-05-29-sql-query-design-page-schema.png?fit=max&auto=format&n=NP3JGKBG3IReJDnF&q=85&s=91f2451978e762eb1aa02acf134893a1" alt="数据库设计页面中的 schema 名称" className="docs-screenshot" width="724" height="252" data-path="images/api/sql-query/2026-05-29-sql-query-design-page-schema.png" />

### 获取表名

Teable 界面上的表名不会自动同步到物理数据库表名。请在数据库设计界面中查看实际的数据库表名。

<img src="https://mintcdn.com/teablecn/NP3JGKBG3IReJDnF/images/api/sql-query/2026-05-29-sql-query-table-info.png?fit=max&auto=format&n=NP3JGKBG3IReJDnF&q=85&s=6937378b70d63d22f11b816ed15b333a" alt="设计页面中的物理表名" className="docs-screenshot" width="1052" height="1372" data-path="images/api/sql-query/2026-05-29-sql-query-table-info.png" />

**提示**：如需修改物理表名，可以在设计界面中进行修改。

### 获取字段名

数据库中的字段（列）名可能与 Teable 界面上显示的不同。请在设计界面中查看 `dbFieldName`。

<img src="https://mintcdn.com/teablecn/NP3JGKBG3IReJDnF/images/api/sql-query/2026-05-29-sql-query-db-field-name.png?fit=max&auto=format&n=NP3JGKBG3IReJDnF&q=85&s=8a1b674268163d171c57eac95689f1cf" alt="设计页面中的物理字段名" className="docs-screenshot" width="1962" height="1314" data-path="images/api/sql-query/2026-05-29-sql-query-db-field-name.png" />

**提示**：修改 Teable 中的字段名不会自动同步。如需修改 PostgreSQL 中的实际列名，请显式修改 `dbFieldName`。

### 系统字段

Teable 自动创建以下系统字段（无法重命名）：

| 字段                     | 说明              |
| ---------------------- | --------------- |
| `__id`                 | 唯一 ID           |
| `__version`            | 版本号             |
| `__auto_number`        | 自增数字，主键         |
| `__created_time`       | 创建时间            |
| `__last_modified_time` | 最近修改时间          |
| `__created_by`         | 创建人 ID          |
| `__last_modified_by`   | 最近修改人 ID        |
| `__row*`               | 视图索引字段，用于维护记录顺序 |
| `__fk*`                | 关联字段的外键         |

### 中间表

以 `junction_` 开头的表是系统自动生成的，用于处理多对多和单向关联关系。

### 权限说明

数据库连接的访问范围仅限于当前数据库。PostgreSQL 的 schema 提供了权限隔离，确保您只能访问自己数据库中的表。

连接时您可能会看到其他的 BaseId（schema 名称），但无法访问它们的内容。

<img src="https://mintcdn.com/teablecn/NP3JGKBG3IReJDnF/images/api/sql-query/2026-05-29-sql-query-tableplus-base-id.png?fit=max&auto=format&n=NP3JGKBG3IReJDnF&q=85&s=353c5eb4d3b7268f44e8f17aaeb17d9b" alt="TablePlus 中的数据库 ID" className="docs-screenshot" width="506" height="820" data-path="images/api/sql-query/2026-05-29-sql-query-tableplus-base-id.png" />

### 写入数据

Teable 不允许通过外部连接直接写入数据库。如需修改数据，请使用 [Teable API](/zh/api-doc/token)。

### 关闭连接

在数据库连接面板中点击删除即可关闭连接。旧密码将被清除，重新创建连接将生成新的凭证。
