在用AI编程时,除了要给AI描述你的需求外,经常还需要把你项目的数据库的表结构告知给AI才行,否则AI再强大也没法正确写出你想要的数据Model和Dao层的代码--应了那句六字箴言“臣妾办不到啊”。
刚开始用AI写代码的时候,我都是把项目数据库的表结构放到项目里一个单独的.sql 文件中,每次需要开发哪个模块的需求时就把对应的表结构用快捷键加到跟AI的对话上下文中,或者更懒一点直接告诉AI去sql文件自己找来看。
这几个月AI编程的工具也是越来越强大,每次开始任务前会先给你列个计划,等符合你预期了再开始干活。那怎么让AI自己去查看或者操作你的数据库呢?这就需要把你项目的数据库通过MCP告诉它了,通过MCP AI能知道项目表的数据结构,甚至是在你的授权下进行CRUD。
想让AI 能通过 MCP 访问和操作数据库,就需要先把你项目的数据库做成一个MCP Server,这里我只推荐搞开发/测试环境的数据库哦,线上环境的数据库还是别让AI直接操作了吧,毕竟程序和人有一个能跑就行......
MCP 工具安装
数据库的MCP Server 并不需要你写代码开发,直接安装使用Google开源的 MCP Toolbox for Databases 即可,里面提供了各个类型的数据库工具,这里我演示一下怎么把MySQL的数据库做成MCP。
首先我们需要在电脑上先安装这个工具:
curl -O https://storage.googleapis.com/genai-toolbox/v0.19.1/darwin/arm64/toolbox安装完后,把它的权限修改为可执行
chmod +x toolbox执行下面的命令验证是否安装设置成功
./toolbox --version在Cursor 中配置MCP
接下来我们在Cursor 中配置项目数据库的MCP,其他AI编程工具的配置大同小异,我们先看Cursor中怎么配置。
在你的项目中需要创建一个.cursor 目录,在其中创建mcp.json 文件,输入下面的配置:
{
"mcpServers": {
"mysql": {
"command": "./PATH/TO/toolbox",
"args": ["--prebuilt", "mysql", "--stdio"],
"env": {
"MYSQL_HOST": "",
"MYSQL_PORT": "",
"MYSQL_DATABASE": "",
"MYSQL_USER": "",
"MYSQL_PASSWORD": ""
}
}
}
}在配置中输入你项目的数据库信息,一般生产环境的数据库从你本地电脑也没法连吧(能连也不能配成生产的),所以这里应该写项目测试/开发环境数据库的信息。
然后我们打开Cursor的MCP配置,路径:Settings > Cursor Settings > MCP

能看到这个绿色的状态就证明Cursor 连接项目的 MCP 成功了。其他工具配置数据库 MCP的方式官方文档里都有说明。

文档链接:https://googleapis.github.io/genai-toolbox/how-to/connect-ide/mysql_mcp/#configure-your-mcp-client
使用数据库 MCP
配置好了之后证明使用呢,我们先来看看 MCP 里提供了哪些工具和对应的功能,MCP的协议里Server会告知MCP Client 自己有什么工具,那么Cursor就是一个内嵌MCP Client 的Host,所以我们直接问AI好了。

具体文字我就不列了,大家直接看图吧,上面常用的有list_tables 和 execute_sql 这两个工具,当然AI调用他们时还需要加上前缀 "mcp_mysql_" 即AI要执行一个SQL查询调用 "mcp_mysql_execute_sql" 这个工具。
这里我们没有必要记这些工具名,只需要给AI下达任务时告知它要做的操作。
比如我说“请使用MCP Mysql工具往 aa库.bb 表中插入一条测试数据,插入数据时需要哪些信息你可以自己扫描表的结构”
那么AI就会先执行 Show Create Table 来查看表的结构

接下来会执行数据插入,目前Cursor默认在执行数据库查询的时候不需要你授权,但是在执行Insert的时候会让你审核SQL点击授权后再执行。

这一点我觉的在让AI自己写程序测试另一个AI写的代码是否符合需求时还是挺有用的,不然除了打字告诉AI去哪里查看建表语句外,生成的一些Mock数据还要AI输出后自己粘贴到数据库工具里去手动执行,体验嘛,肯定是自己动手越少体验越好。
总结
这两个月AI编程能力进步地很快,生态发展的也猛,今天难得有空写点字儿,分享一下一个小工具的使用。最后再提醒一句,不要把生产库的信息配置到MCP里,也不要把这里用到的mcp.json 提交到代码仓库里,免得泄漏隐私信息。
接下来是卖课时间,卖的是我自己写的Go项目实战课,有需要就买,没需要划走即可。
项目采用DDD分层架构设计,结合事件驱动编程等多个程序设计最佳实践,以一个在线商城为例实战演示项目的搭建和开发过程。欢迎扫码订阅我的专栏《Go项目搭建和整洁开发实战》,即可获得完整的教程和实战项目。
目前有优惠名额 ,原价159的课程 130元即可买入,立省29元。买入后终身可看。Go课程附带的项目仓库git 提交记录与课程章节对应,完整展现了从0到1用Go搭建和开发项目的过程,让你能清楚的学习每个章节对应的实战代码。咨询专栏优惠,添加下面我的微信

营业结束,拜拜。

被折叠的 条评论
为什么被折叠?



