使用AdoDB PHP中的存储过程返回数据

时间:2017-06-06 02:27:28

标签: php html sql-server stored-procedures adodb-php

我使用MS SQL Server 2008作为我的数据库,我创建了一个类似于此的存储过程。

USE [DB_Question]
GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER Procedure [dbo].[Check_ExamID]
@ExamID NVARCHAR(MAX)
as
SELECT * FROM TBL_ExamTimer WHERE ExamID = @ExamID

这里是我的PHP代码,它的目标是通过一些标准在我的PHP站点中显示数据。

<html>
<head>

</head>
<body>
<?php

    include('config.php');
    include('adodb/adodb.inc.php');
    $db = ADONewConnection($dbdriver);
    $db->Connect($dsn, $username, $password);

    $procedure = $db->prepareSp('Check_ExamID');
    if (!$procedure)
    die ('Invalid or inaccessible stored procedure name');

    $parameter1Name = '@ExamID';
    $ok = $db->inParameter($procedure,$parameter1Name,'1234');
    $result = $db->execute($procedure);


?> 
</body>
</html>

我正在尝试显示ExamID =@ExamID1234参数@ExamID

的数据

我的目标是使用我的存储过程来选择我的表中的数据并将其返回到我的php文件中,但没有发生。 TYSM

1 个答案:

答案 0 :(得分:0)

在第一个实例中,参数必须是通过引用传递的字符串,因此正确的语法是:

$parameter1Name = '@ExamID';
$parameter1Value = '1234';

$ok = $db->inParameter($procedure,$parameter1Name,$parameter1Value);
$result = $db->execute($procedure);