<tfoot id='4uPL4'></tfoot>

    <small id='4uPL4'></small><noframes id='4uPL4'>

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

        使用 PDO 从 PHP 调用存储过程到使用 INPUT 参数的

        时间:2023-10-05

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

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

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

                  本文介绍了使用 PDO 从 PHP 调用存储过程到使用 INPUT 参数的 MSSQL Server的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

                  问题描述

                  这不起作用:

                    $dbh = new PDO("dblib:host=xxxx;dbname=xxx", "xxxxx", "xxxxx");
                  
                    $sth = $dbh->prepare("{exec wcweb_UserInfo(?)}");
                    $sth->bindParam(1, $name);
                    $sth->execute();
                  
                    while($result = $sth->fetch(PDO::FETCH_ASSOC)) {
                      var_dump($result);
                    }
                  

                  这也不起作用:

                    $dbh = new PDO("dblib:host=xxxxx;dbname=xxxx", "xxxxx", "xxxx");
                  
                    $sth = $dbh->prepare("{call wcweb_UserInfo(?)}");
                    $sth->bindParam(1, $name);
                    $sth->execute();
                  
                    while($result = $sth->fetch(PDO::FETCH_ASSOC)) {
                      var_dump($result);
                    }
                  

                  这确实有效:

                    $dbh = new PDO("dblib:host=xxxxx;dbname=xxxx", "xxxxx", "xxxx");
                  
                    $sth = $dbh->prepare("exec wcweb_UserInfo @userid=?");
                    $sth->bindParam(1, $name);
                    $sth->execute();
                  
                    while($result = $sth->fetch(PDO::FETCH_ASSOC)) {
                      var_dump($result);
                    }
                  

                  我使用 2 尝试了上面的方法,不管有没有大括号,等等.我知道有些人会说,好吧,就按照它的工作方式来做吧?.. 问题是我正在使用 sqlsrv_query 库将现有应用程序从 IIS 服务器移植到 Linux 服务器.

                  I tried the above using 2 that did not work with and without the curly brackets, etc. I know some would say, well just do it the way it works? .. The problem is I am porting an exising application from an IIS Server using the sqlsrv_query library to a Linux server.

                  应用程序中的所有数据库调用都是用使用此方法的函数编写的:{call wcweb_UserInfo(?)} .. 没有指定任何参数名称,因此我必须修改每个数据库调用以包含参数名称.我的印象是 PHP5 的 PDO 库可以执行相同类型的调用?

                  All of the database calls in the app are written in functions that use this method: {call wcweb_UserInfo(?)} .. None of the parameter names are specified, so I would have to modify every database call to include the parameter names. I was under the impression that the PDO library for PHP5 can do those same kind of calls?

                  帮助!是我做错了什么还是只是 PDO 无法进行这些类型的调用?

                  Help! Is there something I am doing wrong or is it just that PDO can't make those kinds of calls?

                  推荐答案

                  出于某种原因,这有效:

                  For some reason this works:

                    $sth = $dbh->prepare("exec wcweb_UserInfo ?");
                    $sth->bindParam(1, $name);
                    $sth->execute();
                  
                    while($result = $sth->fetch(PDO::FETCH_ASSOC)) {
                      var_dump($result);
                    }
                  

                  我也许可以忍受这个.有谁知道为什么其他方法不起作用?图书馆有区别吗?

                  I might be able to live with this. Anyone know why the other methods do not work? Is it a difference in the libraries?

                  这篇关于使用 PDO 从 PHP 调用存储过程到使用 INPUT 参数的 MSSQL Server的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!

                  上一篇:PHP/PDO:创建表时准备好的语句不起作用? 下一篇:使用 PDO MySQL 插入 2 个表

                  相关文章

                  最新文章

                  <tfoot id='z6C5D'></tfoot>
                    <legend id='z6C5D'><style id='z6C5D'><dir id='z6C5D'><q id='z6C5D'></q></dir></style></legend>

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

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

                      • <bdo id='z6C5D'></bdo><ul id='z6C5D'></ul>