1. <legend id='M53La'><style id='M53La'><dir id='M53La'><q id='M53La'></q></dir></style></legend>

    1. <small id='M53La'></small><noframes id='M53La'>

    2. <i id='M53La'><tr id='M53La'><dt id='M53La'><q id='M53La'><span id='M53La'><b id='M53La'><form id='M53La'><ins id='M53La'></ins><ul id='M53La'></ul><sub id='M53La'></sub></form><legend id='M53La'></legend><bdo id='M53La'><pre id='M53La'><center id='M53La'></center></pre></bdo></b><th id='M53La'></th></span></q></dt></tr></i><div id='M53La'><tfoot id='M53La'></tfoot><dl id='M53La'><fieldset id='M53La'></fieldset></dl></div>

        <bdo id='M53La'></bdo><ul id='M53La'></ul>
    3. <tfoot id='M53La'></tfoot>

      Laravel 的原始 SQL 函数之间的区别

      时间:2023-10-31
        <bdo id='mADwg'></bdo><ul id='mADwg'></ul>
            <tbody id='mADwg'></tbody>
          <legend id='mADwg'><style id='mADwg'><dir id='mADwg'><q id='mADwg'></q></dir></style></legend>

        1. <tfoot id='mADwg'></tfoot>

            • <small id='mADwg'></small><noframes id='mADwg'>

                <i id='mADwg'><tr id='mADwg'><dt id='mADwg'><q id='mADwg'><span id='mADwg'><b id='mADwg'><form id='mADwg'><ins id='mADwg'></ins><ul id='mADwg'></ul><sub id='mADwg'></sub></form><legend id='mADwg'></legend><bdo id='mADwg'><pre id='mADwg'><center id='mADwg'></center></pre></bdo></b><th id='mADwg'></th></span></q></dt></tr></i><div id='mADwg'><tfoot id='mADwg'></tfoot><dl id='mADwg'><fieldset id='mADwg'></fieldset></dl></div>
                本文介绍了Laravel 的原始 SQL 函数之间的区别的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                问题描述

                似乎我不是唯一一个为 Laravel 的 DB::raw()、DB::select()、DB::statement() 和 DB::unprepared() 方法之间的差异而苦苦挣扎的人.似乎几乎需要尝试使用所有 4 个给定的 SQL 语句来确定哪个会起作用.谁能澄清它们之间的关系,以及用于什么目的?

                It seems I'm not the only person struggling with the differences between Laravel's DB::raw(), DB::select(), DB::statement(), and DB::unprepared() methods. It seems as if one almost needs to try a given SQL statement with all 4 to identify which will work. Can anybody clarify how they relate to each other, and which to use for what purposes?

                推荐答案

                我会尽量澄清:

                它会生成一个原始且经过清理的 SQL 字符串,以传递给其他查询/语句,从而防止 SQL 注入.是与所有的一起使用的,从不单独使用.并且您永远不应该向您的查询/语句发送未经处理的字符串.

                It generates a raw and sanitized SQL string, to be passed to other query/statements, preventing SQL injections. Is to be used with all of the and never alone. And you should never send a not sanitized string to your query/statements.

                DB::select(DB::raw('select * from whatever'));
                

                DB::select()

                用于简单选择:

                DB::select(DB::raw('select * from whatever'));
                

                DB::statement()

                我认为它适用于选择,但应该用于非 SQL 查询命令:

                DB::statement()

                I think it work with selects, but should be used for non SQL query commands:

                DB::statement(DB::raw('update whatever set valid = true;'));
                

                DB::unprepared()

                Laravel 中的所有 SQL 命令默认都是准备好的,但有时你需要在未准备模式下执行命令,因为某些数据库中的某些命令无法在准备模式下运行.这是我打开的一个问题:https://github.com/laravel/framework/issues/53

                DB::unprepared(DB::raw('update whatever set valid = true;'));
                

                这篇关于Laravel 的原始 SQL 函数之间的区别的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                上一篇:Laravel 多对多加载相关模型与计数 下一篇:laravel 4持续数据正在进行 - jquery ajax提交

                相关文章

              1. <tfoot id='wWDsi'></tfoot>
                • <bdo id='wWDsi'></bdo><ul id='wWDsi'></ul>
              2. <small id='wWDsi'></small><noframes id='wWDsi'>

                  <legend id='wWDsi'><style id='wWDsi'><dir id='wWDsi'><q id='wWDsi'></q></dir></style></legend>

                  <i id='wWDsi'><tr id='wWDsi'><dt id='wWDsi'><q id='wWDsi'><span id='wWDsi'><b id='wWDsi'><form id='wWDsi'><ins id='wWDsi'></ins><ul id='wWDsi'></ul><sub id='wWDsi'></sub></form><legend id='wWDsi'></legend><bdo id='wWDsi'><pre id='wWDsi'><center id='wWDsi'></center></pre></bdo></b><th id='wWDsi'></th></span></q></dt></tr></i><div id='wWDsi'><tfoot id='wWDsi'></tfoot><dl id='wWDsi'><fieldset id='wWDsi'></fieldset></dl></div>