使用大模型进行SQL迁移的实践总结
创始人
2025-01-10 22:03:55
0

在现代化的项目管理和运维工作中,利用大模型(如ChatGPT)处理复杂任务已成为一种高效手段。近期我们在一个项目中尝试利用大模型将MySQL导出的SQL语句迁移为达梦信创数据库格式,通过几轮操作,我们深刻体会到提示词工程的重要性,并总结了使用大模型的最佳实践。

项目背景

在项目中,我们需要将一份从MySQL导出的SQL文件迁移为达梦信创数据库格式,具体要求是将SQL语句中的表名和字段名全部加上双引号。人工处理不仅耗时且容易出错,因此我们决定尝试利用大模型来完成这项任务。

操作过程

第一轮操作:

我们将脱敏后的SQL文件上传至ChatGPT,并下指令为“帮我把文件中的SQL语句表名和列表加上双引号”。操作如下图所示:

图片

初步结果显示大部分语句正确处理,但仍有部分未按要求执行。如下图所示:

图片

此时,我们意识到提示词和示例的重要性。

第二轮操作:

针对第一轮结果,我们明确指出存在问题,并提供了一个手工处理后的正确示例。

图片

尽管结果有所改善,但部分过长的SQL语句仍未完全正确处理。如下图所示:

图片

此时,我们进一步调整了提示词,并增强了示例的覆盖面。

第三轮操作:

在前两轮的基础上,我们增加了示例数量,并设计了更详细的提示词。具体提示词包括明确的需求、正确的SQL语句示例以及操作后的预期结果。

图片

完整的”提示词工程“如下:

帮我把文件中的sql语句表名和列名加上双引号。如下为表名和列名加上双引号的正确示例,请将如上文件进行修改后,并提供下载:INSERT INTO "QRTZ_CRON_TRIGGERS" ("SCHED_NAME","TRIGGER_NAME","TRIGGER_GROUP","CRON_EXPRESSION","TIME_ZONE_ID") VALUES ('UCenterScheduler','TASK_CLASS_NAME102','DEFAULT','0 0 0 ? * 1','Asia/Hong_Kong'); INSERT INTO "SYS_DICT_DATA" ("DICT_SORT","DICT_LABEL","DICT_VALUE","DICT_TYPE","CSS_CLASS","LIST_CLASS","IS_DEFAULT","STATUS","CREATE_BY","CREATE_TIME","UPDATE_BY","UPDATE_TIME","REMARK") VALUES (2,'服务中心','2','sys_link_type','','default','N','0','EoiAdmin','2023-06-09 14:22:42','EoiAdmin','2023-06-14 16:50:46',''), (1,'运管系统','1','sys_link_type',NULL,'default','N','0','EoiAdmin','2023-06-09 14:23:10','',NULL,NULL), (3,'轮播类型','3','sys_link_type',NULL,'default','N','0','EoiAdmin','2023-06-09 14:23:38','',NULL,NULL), (4,'报表类型','4','sys_link_type',NULL,'default','N','0','EoiAdmin','2023-06-26 15:00:13','EoiAdmin','2023-06-26 15:00:22',NULL); INSERT INTO "SYS_USER" ("DEPT_ID","USER_NAME","NICK_NAME","USER_TYPE","EMAIL","PHONENUMBER","SEX","AVATAR","PASSWORD","STATUS","DEL_FLAG","LOGIN_IP","LOGIN_DATE","CREATE_BY","CREATE_TIME","UPDATE_BY","UPDATE_TIME","REMARK","SSO_ID","SOURCE_BY","OTP_SK","SECRET_BASE32","EMPLOYEEID","EN_NAME","DEPARTMENT","LAST_PASSWORD_CHANGE_DATE") VALUES (103,'EoiAdmin','开发','00','','15888888888','0','','$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2','0','0','192.168.21.225','2024-07-09 11:56:23','admin','2023-02-14 11:03:47','','2024-07-08 23:56:23','管理员',20200321,'0','otpauth://totp/EoiAdmin@?secret=ISG5WRNRFRDXJAOQAEIJ33YDOBV2EUDOON766YF2TSODJ27XNIRQ&period=30&digits=6','ISG5WRNRFRDXJAOQAEIJ33YDOBV2EUDOON766YF2TSODJ27XNIRQ',NULL,NULL,NULL,'2024-07-08 23:56:23'), (103,'admin','管理员','00','admin@eoitek.com','15888880000','0','','$2a$10$erscMiICVJEZ7NjUA7kbZOXA2URJn3iSt2WdmvusqDVd7HzASIZWq','0','0','192.168.21.225','2024-07-10 11:40:09','admin','2023-02-14 11:03:47','admin','2024-07-09 23:40:08','管理员',20200321,'0','','6XJXUMWJACPXKLO3SU44HKDGEUDTQIG7PGJYHMLJO3W42GPIDSMA',NULL,NULL,NULL,'2024-07-09 23:40:08');

最终,大模型成功按要求处理了所有SQL语句,达到了预期效果。

经验总结

通过这次实践,我们总结出以下几点关键经验:

1. 明确需求:提示词必须清晰明确,涵盖具体需求和预期结果,避免歧义。

2. 提供示例: 通过提供多个正确示例,可以帮助大模型学习和理解需求,从而输出正确结果。

3. 反馈和调整: 针对初步结果进行反馈,调整提示词和示例,逐步优化输出效果。

4. 提示词工程:设计提示词时要注意逻辑性和层次性,使大模型能够逐步理解任务并正确执行。

结语

在实际应用中,利用大模型处理复杂任务不仅提升了效率,还保证了结果的准确性。然而,要充分发挥大模型的潜力,提示词工程和示例设计至关重要。未来,我将继续探索大模型在运维、项目管理和日常工作中的更多应用场景,帮助大家提高工作和学习效率。

通过此次SQL迁移的成功实践,我更加坚定了利用大模型提升工作效率和质量的信心。希望这次经验总结能为更多项目和团队提供借鉴。

相关内容

热门资讯

2026版教学!欢乐达人猜猜乐... 2026版教学!欢乐达人猜猜乐友挂吗(辅助)本来存在有辅助工具(有挂解密)1、下载好欢乐达人猜猜乐友...
据统计!全民比鸡辅助透视工具(... 据统计!全民比鸡辅助透视工具(辅助)真是是真的有辅助器(证实有挂)1、据统计!全民比鸡辅助透视工具(...
经核实!功夫川麻辅助(辅助)其... 经核实!功夫川麻辅助(辅助)其实是有辅助教程(有挂分析)1、每一步都需要思考,不同水平的挑战会更加具...
目前!皮皮广东游戏辅助软件(辅... 目前!皮皮广东游戏辅助软件(辅助)一直存在有辅助攻略(有挂技术)1、玩家可以在皮皮广东游戏辅助软件线...
2026版软件!蜀山四川小程序... 2026版软件!蜀山四川小程序技巧(辅助)都是真的是有辅助软件(有挂实锤)1、蜀山四川小程序技巧公共...
这一现象值得深思!四川途游辅助... 这一现象值得深思!四川途游辅助软件(辅助)竟然存在有辅助神器(的确有挂)1、每一步都需要思考,不同水...
今天下午!哥哥打大a有辅助吗(... 今天下午!哥哥打大a有辅助吗(辅助)切实是有辅助攻略(证实有挂)暗藏猫腻,小编详细说明哥哥打大a有辅...
近日!陕麻圈辅助开挂软件(辅助... 近日!陕麻圈辅助开挂软件(辅助)一直确实有辅助app(有挂攻略)陕麻圈辅助开挂软件透视方法中分为三种...
有玩家发现!潮汕掌上娱破解器(... 有玩家发现!潮汕掌上娱破解器(辅助)竟然是真的有辅助app(有挂分析)1、完成潮汕掌上娱破解器辅助器...
不少玩家反映!湖北卡五星技能辅... 不少玩家反映!湖北卡五星技能辅助(辅助)一贯存在有辅助脚本(今日头条)1、超多福利:超高返利,海量正...