首页IT科技chat coin(chatGPT实战之「基于你的数据库,为你智能生成SQL」)

chat coin(chatGPT实战之「基于你的数据库,为你智能生成SQL」)

时间2025-06-12 08:43:54分类IT科技浏览3689
导读:chatGPT为你生成SQL的落地效果演示 这几天很很多粉丝进行了深度交流,发现大家对于SQL学习或者编写都遇到过困难,因此勇哥突发奇想是否可以借助chatGPT来帮一下大家呢?于是就开启了chatGPT的落地之旅。从官网了解到chatGPT支持49种场景的,其中2中常见与sql相关,既:...

chatGPT为你生成SQL的落地效果演示

这几天很很多粉丝进行了深度交流             ,发现大家对于SQL学习或者编写都遇到过困难                    ,因此勇哥突发奇想是否可以借助chatGPT来帮一下大家呢?于是就开启了chatGPT的落地之旅             。从官网了解到chatGPT支持49种场景的      ,其中2中常见与sql相关      ,既:

无依据                    ,通过一句话来生成sql语句

有依据             ,通过一句话来生成sql语句

这两种方式进过效果对比      ,第2种效果非常的好                   ,于是我就在我的产品中按照第2中模式开发了一个对大家有帮助的功能:“基于你自己的数据库结构             ,通过一句中文,自动生成SQL语句             ”                   ,演示效果如下:

第一种生成方式:单独窗口生成SQL                   ,操作步骤:

1             、选中生成SQL可能要用到的表,这个将作为上下文             ,发送给chatGPT

2                   、在打开的窗口中用中文描述你想要的SQL的需求                   ,然后点击RUN按钮

3       、生成成功后的SQL会在右中面板中显示出来      ,同时你可以直接点运行             ,查看生成SQL语句的执行结果

通过多张表                    ,通过中文生成SQL

第二种生成方式:查询器中生成SQL操作步骤:

1             、随便打开一个数据库表的查询器

2                   、在查询器中写一句描述要生成sql语句的中文      ,选中后右键点击【Sq lGenerator】菜单      ,即可生成

3       、选中生成的SQL语句                    ,即可执行查看结果

通过中文注释来生成SQL

chatGPT为你生成SQL的落地代码赏析

chatGPT的入门案例

其实chatGPT的API调用非常简单             ,但是复杂的是他的参数非常的复杂      ,举个两个例子:

1      、下面temperature参数写成0.0D或者0.1D                   ,其它参数都不变             ,那么获得结果都是不同类的,也就是0.0D是你想要的SQL                   ,0.1D就变成了小说内容了;

2                   、prompt是输入的信息                   ,49中场景,prompt的输入格式就有49种             ,非常复杂                   ,一不小说错误输入      ,就会获取不到结果;

PS:下周一勇哥回专门开一场直播             ,来教大家入门chatGPT                    ,以及49种场景的介绍      ,欢迎大家关注我      ,到时候直播实现好及时通知                   。

public static void main(String[] args) { String token = "换成你自己的Token"; OpenAiService service = new OpenAiService(token); CompletionRequest completionRequest = CompletionRequest.builder() .model("code-davinci-002") .prompt("### Mysql SQL tables, 表字段信息如下:\\n#\\n# Employee(id, name, department_id)\\n# Department(id, name, address)\\n# Salary_Payments(id, employee_id, amount, date)\\n#\\n### 创建表的语法\\n HELP") .temperature(0.0D) .maxTokens(1000) .topP(1D) .frequencyPenalty(0D) .presencePenalty(0D) .stop(Arrays.asList("#",";")) .build(); service.createCompletion(completionRequest).getChoices().forEach(System.out::println); }

chatGPT的落地案例

下面这段代码就是最开始我验收那些效果的真实代码                    ,基本和入门代码差不多             ,不同的是我在上面增加了输入需求的初步过滤      ,这样生成的SQL精准度会高非常多       。

public class AiUtils { /** * 生成需求 * @return */ public static List<CompletionChoice> generatorSqlQuery(String tables,String demand){ String keyword = ""; if(demand.contains("查询")||demand.contains("select")){ keyword = "SELECT"; }else if(demand.contains("删除数据")||demand.contains("delete")){ keyword = "DELETE"; }else if(demand.contains("删除")||demand.contains("drop")){ keyword = "DROP"; }else if(demand.contains("修改数据")||demand.contains("update")){ keyword = "UPDATE"; }else if(demand.contains("修改")||demand.contains("alter")){ keyword = "ALTER"; }else if(demand.contains("增加")||demand.contains("insert")){ keyword = "INSERT"; }else if(demand.contains("创建")||demand.contains("create")){ keyword = "CREATE"; }else if(demand.contains("显示")||demand.contains("show")){ keyword = "SHOW"; }else if(demand.contains("清空")||demand.contains("truncate")){ keyword = "TRUNCATE"; } OpenAiService service = new OpenAiService(TOKEN); CompletionRequest completionRequest = CompletionRequest.builder() .model("code-davinci-002") .prompt(String.format("%s %s\\n%s",tables,demand,keyword)) .temperature(0.0D) .maxTokens(1000) .topP(1D) .frequencyPenalty(0D) .presencePenalty(0D) .stop(Arrays.asList("#",";")) .build(); List<CompletionChoice> choices = service.createCompletion(completionRequest).getChoices(); for (CompletionChoice choice : choices) { choice.setText(keyword+choice.getText()); } return choices; } }

chatGPT落地收获

chatGPT更多的应用场景和落地注意事项                   ,勇哥将在12月16号的直播中阐述             ,欢迎各位同学来捧场交流             。+关注,届时好通知直播时间                   。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
网络广告营销实现方式解读(如何利用网络营销和SEO提升品牌曝光) 史上最全学习率调整策略lr_scheduler