Schema Exploration

作者 langchain-ai6a3a12bc5b3a無授權條款30K 個星標收錄於 2026年10月8日更新於 2026年10月8日儲存庫今天更新

Lists tables, describes columns and data types, identifies foreign key relationships, and maps entity relationships in a database. Use when the user asks about database schema, table structure, column types, what tables exist, ERD, foreign keys, or how entities relate.

僅含說明Data & Analytics
AI 產生的概覽

探索資料庫結構:列出資料表、說明欄位與資料型別,並梳理外鍵關聯。

功能
引導代理使用 sql_db_list_tables 與 sql_db_schema 工具檢視資料庫結構。它會產出附簡要說明的資料表清單、包含資料型別與範例資料列的欄位清單,以及呈現實體間主鍵與外鍵關聯的關聯圖。它也會說明諸如依演出者統計收入這類問題所需的連接路徑,並將查詢執行交由獨立的查詢撰寫技能處理。
適用情境
當使用者詢問有哪些資料表、某張資料表有哪些欄位或資料型別、實體之間如何關聯,或需要 ERD 與外鍵概觀時使用。它適合在撰寫查詢之前先了解結構,而非執行查詢本身。
執行需求
需要 sql_db_list_tables 與 sql_db_schema 工具,以及資料庫的存取權限。不附帶指令碼,僅為說明性指示。

Schema Exploration Skill

Workflow

1. List All Tables

Use sql_db_list_tables tool to see all available tables in the database.

This returns the complete list of tables you can query.

2. Get Schema for Specific Tables

Use sql_db_schema tool with table names to examine:

  • Column names - What fields are available
  • Data types - INTEGER, TEXT, DATETIME, etc.
  • Sample data - 3 example rows to understand content
  • Primary keys - Unique identifiers for rows
  • Foreign keys - Relationships to other tables

3. Map Relationships

Identify how tables connect:

  • Look for columns ending in "Id" (e.g., CustomerId, ArtistId)
  • Foreign keys link to primary keys in other tables
  • Document parent-child relationships

4. Answer the Question

Provide clear information about:

  • Available tables and their purpose
  • Column names and what they contain
  • How tables relate to each other
  • Sample data to illustrate content

Example: "What tables are available?"

Step 1: Use sql_db_list_tables

Response:

The Chinook database has 11 tables:1. Artist - Music artists2. Album - Music albums3. Track - Individual songs4. Genre - Music genres5. MediaType - File formats (MP3, AAC, etc.)6. Playlist - User-created playlists7. PlaylistTrack - Tracks in playlists8. Customer - Store customers9. Employee - Store employees10. Invoice - Customer purchases11. InvoiceLine - Individual items in invoices

Example: "What columns does the Customer table have?"

Step 1: Use sql_db_schema with table name "Customer"

Response:

The Customer table has these columns:
- CustomerId (INTEGER) - Primary key, unique customer ID- FirstName (NVARCHAR) - Customer's first name- LastName (NVARCHAR) - Customer's last name- Company (NVARCHAR) - Company name (optional)- Address, City, State, Country, PostalCode - Location fields- Phone (NVARCHAR) - Phone number- Fax (NVARCHAR) - Fax number- Email (NVARCHAR) - Email address- SupportRepId (INTEGER) - Foreign key to Employee table
Sample data shows customers like:- Luís Gonçalves from Brazil- Leonie Köhler from Germany- François Tremblay from Canada

Example: "How do I find revenue by artist?"

Step 1: Identify tables needed

  • Artist (has artist names)
  • Album (links artists to tracks)
  • Track (links albums to sales)
  • InvoiceLine (has sales data)
  • Invoice (has revenue totals)

Step 2: Map relationships

Artist (ArtistId)  ↓ 1:manyAlbum (ArtistId, AlbumId)  ↓ 1:manyTrack (AlbumId, TrackId)  ↓ 1:manyInvoiceLine (TrackId, UnitPrice, Quantity)

Response:

To find revenue by artist, you'll need to:1. Start with the Artist table2. JOIN to Album on ArtistId3. JOIN to Track on AlbumId4. JOIN to InvoiceLine on TrackId5. SUM the revenue (UnitPrice * Quantity)6. GROUP BY artist name
This requires the query-writing skill to execute.

Quality Guidelines

For "list tables" questions:

  • Show all table names
  • Add brief descriptions of what each contains
  • Group related tables (e.g., music catalog, transactions, people)

For "describe table" questions:

  • List all columns with data types
  • Explain what each column contains
  • Show sample data for context
  • Note primary and foreign keys
  • Explain relationships to other tables

For "how do I query X" questions:

  • Identify required tables
  • Map the JOIN path
  • Explain the relationship chain
  • Suggest next steps (use query-writing skill)

來源與署名

來源:langchain-ai/deepagents位於examples/text-to-sql-agent/skills/schema-exploration提交6a3a12b

授權條款: 無授權條款

內容歸原作者所有。SourceWeft 從公開儲存庫中收錄這些內容。

檢舉或申請下架