使用 Orator 将你的 SQL 转换为 Laravel Query 语句

Cover

本文翻译整理至 Convert Your SQL to Laravel Builder with Orator

介绍

你可以可以使用 Orator(Maurice Calhoun 的在线工具)轻松的将原生和历史遗留 SQL 语句转换为 Laravel 函数式 Query 语句。

这个在线工具也是你学习 Laravel ORM 的极好工具,它可以帮助你将 SQL 查询语句转换成查询构建器对象,因为学习新的 ORM 有时可能成为新开发人员的挑战。

使用

点击此处可试用此工具

你只需输入您的 SQL语句,此工具便会返回一个 Laravel 函数式 Query 语句。

例如,拿这个SQL查询:

select posts.id, posts.title, posts.body from posts
where posts.author_id = 1
order by posts.published_at DESC
limit 10;

在线工具将其转换为以下 Laravel 函数式 Query 语句 :

DB::select('posts.id','posts.title','posts.body')
    ->from('posts')
    ->where('posts.author_id', '=', 1)
    ->orderBy('posts.published_at', 'DESC')
    ->limit(10)
    ->get();

最后还有一件要注意的事,你必须将反引号(`)替换为 (') 才能正常使用,因为此工具在生成字符串时会使用反引号。而 PHP 则会将尝试将反引号中的内容作为 shell 命令来执行,详见(执行运算符)

如果你正在学习 Laravel 的查询构建器,那么不妨先看一看 @godruoyi 翻译的这篇文章,相信会对你有所帮助:使用预加载优化 Laravel Model 查询

本作品采用《CC 协议》,转载必须注明作者和本文链接
本帖由系统于 7年前 自动加精
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 10

转换成orm呢

7年前 评论

@BradStev 转换成 ORM 和这个没有什么本质上的区别吧

7年前 评论

@Seaony 对于关联关系的使用好点吧,其他的应该没多少区别

7年前 评论

@BradStev Eloquent 的关联感觉不适用于自动生成,需要自己控制的太多了

7年前 评论

@Seaony 是这样,除非单表的操作。

7年前 评论
DukeAnn

打不开了

6年前 评论

为啥打开是广告页

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!