Tôi có báo cáo kết quả sau đây trong một Stored Procedure:Làm thế nào để sử dụng một giá trị từ một thủ tục lưu sẵn trong một thủ tục khác?
DECLARE @Count INT
EXEC @Count = GetItemCount 123
SELECT @Count
nào gọi một thủ tục lưu trữ với các tuyên bố sau bên trong:
SELECT COUNT(Item) FROM tblItem WHERE ID = @ID
Tuy nhiên khi tôi thử nghiệm các cuộc gọi EXEC kết quả đầu ra giá trị chính xác nhưng nó không được gán cho Biến số @Count chính xác. Tôi đã xem các ví dụ hoặc các thủ tục được lưu trữ được sử dụng như thế này, bao gồm ở đây nhưng không có tham số nào và giá trị trả về được sử dụng (mà tôi có thể tìm thấy). Tham số ID được chuyển vào câu lệnh thứ hai trả về giá trị đếm được sử dụng bởi StoredProcedure đầu tiên - tất cả thông tin tôi đã đọc dường như cho biết điều này sẽ hoạt động - nhưng giá trị @Count không phải là số 0, ngay cả khi GetItemCount trả về luôn giá trị chính xác.
Đây là trong Microsoft SQL Server 2008 nếu có ích.
tôi đã có thể có được điều này để làm việc - có một đầu ra như một tham số được giải pháp - tiếp tục lãng quên SQL không giống như kiểu lập trình mà tôi từng sử dụng. – RoguePlanetoid