Skip to content

表名不准确 #52

Open
Open
@DeathGanker

Description

@DeathGanker

我发现这里面的执行逻辑可能有点问题,服务里提供了查询表结构的能力,但是在调用的时候并非强制执行,这会导致一个问题,大模型在生成sql语句的时候,会去猜测表名,导致无法查到具体有效的表;
2025-05-07 19:51:54,447 - mcp.server.lowlevel.server - INFO - Processing request of type ListToolsRequest
2025-05-07 19:51:54,448 - mysql_mcp_server - INFO - Listing tools...
2025-05-07 19:51:54,451 - mcp.server.lowlevel.server - INFO - Processing request of type ListToolsRequest
2025-05-07 19:51:54,451 - mysql_mcp_server - INFO - Listing tools...
2025-05-07 19:52:01,516 - mcp.server.lowlevel.server - INFO - Processing request of type CallToolRequest
2025-05-07 19:52:01,517 - mysql_mcp_server - INFO - Calling tool: execute_sql with arguments: {'query': "SELECT MONTH(date) AS month, SUM(revenue) AS total_revenue FROM tech_service_revenue WHERE YEAR(date) = 2023 AND city = 'A市' GROUP BY MONTH(date) ORDER BY total_revenue DESC LIMIT 3;"}
2025-05-07 19:52:01,575 - mysql.connector - INFO - package: mysql.connector.plugins
2025-05-07 19:52:01,575 - mysql.connector - INFO - plugin_name: caching_sha2_password
2025-05-07 19:52:01,575 - mysql.connector - INFO - AUTHENTICATION_PLUGIN_CLASS: MySQLCachingSHA2PasswordAuthPlugin
2025-05-07 19:52:01,578 - mysql_mcp_server - ERROR - Error executing SQL 'SELECT MONTH(date) AS month, SUM(revenue) AS total_revenue FROM tech_service_revenue WHERE YEAR(date) = 2023 AND city = 'A市' GROUP BY MONTH(date) ORDER BY total_revenue DESC LIMIT 3;': 1146 (42S02): Table 'caiwu.tech_service_revenue' doesn't exist

Result: 看起来数据库中不存在名为 tech_service_revenue 的表,或者表名可能有误。我需要确认正确的表名或查询其他可能包含科技服务收入数据的表。

请提供以下信息:

  1. 数据库中是否有其他表可能包含科技服务收入数据?
  2. 表名或字段名是否有其他拼写方式?

或者,您可以提供相关的表结构信息,以便我调整查询。

应该在执行sql语句前,让大模型了解表结构信息以及示例数据,以便保证输出可执行的sql语句;

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions