Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/235.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
OUTPUT子句在PHP中获取返回值_Php_Mysql_Sql_Output Clause - Fatal编程技术网

OUTPUT子句在PHP中获取返回值

OUTPUT子句在PHP中获取返回值,php,mysql,sql,output-clause,Php,Mysql,Sql,Output Clause,在做了一些研究之后,我想我需要输出子句。基本上,当我收到上传到服务器的文件的位置时,我使用下面的SQL并插入到指定的表中。当我上传到表中时,ID是一个自动递增字段和主键 $conn = mysqli_connect($DBHOSTmy, $DBuser, $DBpass, $DBmy) or die("An error occurred connecting to the database " . mysqli_error($conn)); $query = "INSERT INTO ebwf

在做了一些研究之后,我想我需要输出子句。基本上,当我收到上传到服务器的文件的位置时,我使用下面的SQL并插入到指定的表中。当我上传到表中时,ID是一个自动递增字段和主键

$conn = mysqli_connect($DBHOSTmy, $DBuser, $DBpass, $DBmy) or die("An error occurred connecting to the database " . mysqli_error($conn));

$query = "INSERT INTO ebwf (src,loc,iq,wq,pq) OUTPUT Inserted.id, Inserted.src, Inserted.loc, Inserted.iq, Inserted.wq, Inserted.pq VALUES ('" . $source . "','" . $finalPdf . "','y',0,0);";

echo $query;

$result = $conn->query($query); 

echo $result->num_rows;


$conn->close();
当运行该命令时,我得到一个
INSERT-INTO-ebwf(src,loc,iq,wq,pq)输出Inserted.src,Inserted.loc,Inserted.iq,Inserted.wq,Inserted.pq值的返回('m','scan/WF_153_140812113520.pdf','y',0,0),但我没有得到返回的行数

我真的只需要插入行的这一分钟的ID,但是如果我们能得到所有这些字段,那就太棒了

我几乎是从几个不同的地方复制了OUTPUT子句的用法,但是我不知道我做了什么错事而没有得到返回

在写这篇文章的时候,我试图做一些研究,因为我没有很好的回复率,因为人们认为我缺乏它,所以我也发现:。。。我仅将查询更改为:

$query = "DECLARE @OutputTbl TABLE (id INT, src VARCHAR, loc VARCHAR, iq INT, wq INT, pq INT);

INSERT INTO ebwf (src,loc,iq,wq,pq) OUTPUT Inserted.id, Inserted.src, Inserted.loc, Inserted.iq, Inserted.wq, Inserted.pq INTO @OutputTbl(id, src, loc, iq, wq, pq) VALUES ('" . $source . "','" . $finalPdf . "','y',0,0);";

很遗憾,我还是一无所获。。希望这能为我下一步的工作提供足够的信息。

@cmorrissey提供了一个很好的解决方案


$last\u insert\u id=$conn->insert\u id


这将返回最后插入的id(我认为自动递增的主键是最正确的解释)。我不确定为什么输出不正确,因为我在很多地方都看到过它,而用户只看到过一次。

$last\u insert\u id=$conn->insert\u id输出manner@cmorrissey我第一次看到这一切,甚至认为这是不可能的。非常感谢。你能添加一个答案吗?这样我就可以设置它了。。你知道输出在哪里使用,为什么我看到它用于MySQL吗?。。