大数跨境
0
0

AI编程实践 | 数据库设计及初始化

AI编程实践 | 数据库设计及初始化 CodeGallop
2025-06-26
0
导读:本篇文章来介绍用AI进行chatBI系统的数据库设计及初始化。
本篇文章来介绍用AI进行chatBI系统的数据库设计及初始化。
本篇文章有如下几个节点:
  • 系统技术架构文档生成数据库设计文档;
  • 根据数据库设计文档生成数据库表结构的DDL脚本
  • 创建数据库并初始化表结构

数据库设计文档生成

1、根据之前生成的项目系统技术架构文档生成数据库设计文档
2、由于文档内容太多导致中断,输入“继续”,完成文档生成。
3、因为中断又继续,导致生成的文档标题结构有点混乱,需要让AI进行调整

在生成内容较多的文档时,最好先规划步骤,按步骤逐步生成文档,才不会因为内容输出太长,导致中断,中断后又继续,容易导致生成的内容顺序混乱,像我这个数据库设计文档就是这种情况。

4、生成的数据库设计文档截图

5、尽管我的系统技术架构文档明确指明数据库选型是PostgreSQL,在生成数据库设计文档时也引用了“ChatBI系统技术架构文档.md”,但结果数据库选型却是MySQL 8.0+(看上面截图),所以文档需要进行调整
修改了关于数据库选型的描述以及一些表字段的类型需要符合PostgreSQL的语法。

在生成数据库设计文档时,最好给AI明确指明数据库选型,避免它又默认使用MySQL来设计数据库


数据库表结构DDL脚本生成

1、根据数据库设计文档生成表结构的DDL脚本
2、生成的数据库初始化DDL脚本如下

数据库初始化

1、配置PostgreSQL MCP

PostgreSQL database URL的格式:postgresql://user:password@host:port/dbname

2、想用PostgreSQL MCP 进行数据库表的初始化(实际上PostgreSQL MCP 只有查询权限,没有修改和写的权限)。
在没使用PostgreSQL MCP之前一直以为这个MCP可以当数据库管理工具一样使用,可以修改数据库表结构、读写数据库表等操作,虽然上面截图提示它只是支持query操作,但不死心,以为是配置权限的问题,问了AI如下问题:
AI也是一本正经的胡说,还给出了详细的配置:
我也是根据它提示的配置,进行了MCP的配置修改,修改了好几个版本的配置,但其实是不生效的
最后在官网上查到如下信息:
所以放弃了用MCP初始化数据库表结构的想法,乖乖使用Navicat 导入sql脚本,进行数据库初始化,最终的数据库表如下:
3、用PostgreSQL MCP 查询一下数据库有几个表

实践心得

1、在用AI生成数据库设计文档时,记得要明确指明用表格呈现数据库表结构的描述,要不然它会直接给生成一堆ddl脚本,记住一句话“你想要什么,请描述清楚”;
2、在生成数据库设计文档时,还是得明确说明主数据库用的是PostgreSQL,要不然AI默认给你选择MYSQL,导致后面还得调整一次;
3、目前Trae并没有长期记忆的功能,所以你后面的AI对话,并不是基于之前所有对话内容为基础的,它的上下文(Context)有限,比较靠前的对话内容AI可能已经不记得了,所以最佳方式是记录文档,并让AI时不时的阅读了解一下整个项目的进展情况。
4、AI并不是100%可靠的,它其实是基于概率来进行推理的,所以对AI给出的任何建议都要持审慎怀疑的态度,比如我问它如何配置PostgreSQL MCP 使它有修改数据库的权限,AI并没有去查阅官网,查找配置信息,而是直接就给出配置样例,在这一点上,AI就是一本正经的在胡说。
5、因为PostgreSQL MCP 只提供query 工具,并没有修改和写的权限,我又去找了几个数据库工具的MCP,要么配置连接不成功,要么要注册账号,并申请配置token才能使用,一个本地开发的小工具,为啥要注册账号,还要配置token,直接pass掉了。
用AI编程,没法用AI对话方式进行数据库初始化实在有点郁闷,突然脑袋闪过一个想法:为啥不能自己搞个PostgreSQL MCP server呢,让它有修改数据库,有读写数据库表的权限不就好了,哈哈!
在AI编程年代,有想法就要马上行动,这才是当前正确的思维方式,等我去实践一下,再来汇报用AI编写第一个MCP server 的实践结果

如果本文对你有帮助,不妨点个免费的赞收藏备用。

👇 关注Gallop,让AI提升你的效率



👉 添加我的微信(gallop_liu),备注“加群”,交流并分享个人的一些资料。

程序猿的保命茶:

胎菊8颗+玫瑰6颗+枸杞少许

夏天胎菊多一些,枸杞少一些,冬天则相反


【声明】内容源于网络
0
0
CodeGallop
AI正在改变世界,而你可以轻松成为参与者!AI提高代码效率-->AI提高工作学习效率-->AI提升生活指数,用AI武装你的生活和工作吧!快来加入AI探索之旅吧!🤖🚀
内容 42
粉丝 0
CodeGallop AI正在改变世界,而你可以轻松成为参与者!AI提高代码效率-->AI提高工作学习效率-->AI提升生活指数,用AI武装你的生活和工作吧!快来加入AI探索之旅吧!🤖🚀
总阅读41
粉丝0
内容42