【问题标题】:Display temporary table in PHP - MSSQL在 PHP - MSSQL 中显示临时表
【发布时间】:2018-01-02 13:26:46
【问题描述】:

需要帮助。 我们正在处理数据并将其存储在临时变量@TEMP 中。

将它存储在一个过程中,我们希望在我们的 PHP 网站上显示 @TEMP 表。 我们正在使用 PDO 进行数据库连接。

我们能够显示来自数据库表的数据,但我想显示@TEMP 表。

CREATE PROCEDURE ShowReport
@Username
AS
BEGIN
/*...
INSERT INTO @TEMP ()...

UPDATE @TEMP SET .....
*/ 

SELECT * FROM @TEMP
END 

【问题讨论】:

    标签: php sql-server pdo


    【解决方案1】:

    从未使用过 PHP,但直接从表中选择的过程与首先加载临时表或表变量然后从中选择的过程之间的唯一区别是行计数消息。一些驱动程序在从数据库服务器收到行计数消息时停止查找结果集。

    因此,请尝试在您的程序开始时设置 NOCOUNT ON。 EG

    CREATE PROCEDURE ShowReport
    @Username
    AS
    BEGIN
    SET NOCOUNT ON;
    /*...
    INSERT INTO @TEMP ()...
    
    UPDATE @TEMP SET .....
    */ 
    
    SELECT * FROM @TEMP;
    END 
    

    【讨论】:

    • 它确实给出了与您刚刚解释的内容相关的错误。我会试一试,让你知道它是否有效!
    • SET NOCOUNT ON 应该是任何存储过程中的第一行代码
    猜你喜欢
    • 1970-01-01
    • 2017-11-28
    • 2011-10-30
    • 1970-01-01
    • 1970-01-01
    • 2020-11-17
    • 1970-01-01
    • 2017-05-27
    • 1970-01-01
    相关资源
    最近更新 更多