Tôi đang làm việc với một thủ tục lưu trữ SQL Server trả về mã lỗi; đây là một đoạn rất đơn giản của SP.PDO Lưu trữ thủ tục trả về giá trị
DECLARE @ret int
BEGIN
SET @ret = 1
RETURN @ret
END
tôi có thể nhận giá trị trả về với phần mở rộng MSSQL sử dụng:
mssql_bind($proc, "RETVAL", &$return, SQLINT2);
Tuy nhiên, tôi không thể tìm ra cách để truy cập giá trị trả về trong PDO; Tôi không muốn sử dụng tham số OUT, vì rất nhiều các thủ tục lưu sẵn này đã được viết. Đây là một ví dụ về cách tôi hiện đang gọi thủ tục trong PHP.
$stmt = $this->db->prepare("EXECUTE usp_myproc ?, ?");
$stmt->bindParam(1, 'mystr', PDO::PARAM_STR);
$stmt->bindParam(2, 'mystr2', PDO::PARAM_STR);
$rs = $stmt->execute();
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
Tôi gặp sự cố tương tự, hãy xem: http://stackoverflow.com/questions/21466503/calling-stored-procedure-from-php-using-pdo-to-m ssql-server-using-input-paramter –
OK: http://stackoverflow.com/a/32224294/2717254 –