Tôi nghĩ rằng tôi có cùng một vấn đề như kcrumley mô tả trong câu hỏi "Problem calling stored procedure from another stored procedure via classic ASP". Tuy nhiên câu hỏi của anh không thực sự bao gồm một giải pháp, vì vậy tôi sẽ cung cấp cho nó một shot, thêm những quan sát của riêng tôi:MS SQL: Loại bỏ giá trị trả về của thủ tục lưu sẵn được gọi trong thủ tục lưu sẵn
Tôi có hai thủ tục lưu trữ:
CREATE PROCEDURE return_1 AS BEGIN
SET NOCOUNT ON;
SELECT 1
END
CREATE PROCEDURE call_return_1_and_return_2 AS BEGIN
SET NOCOUNT ON;
EXEC return_1
SELECT 2
END
Lưu ý rằng cả hai thủ tục chứa "SET NOCOUNT ON ". Khi tôi thực hiện "call_return_1_and_return_2" Tôi vẫn nhận được hai bộ bản ghi. Đầu tiên giá trị 1, sau đó là giá trị 2.
Điều đó ném ASP (cổ điển VBScript ASP) ra khỏi tuyến đường.
Bất kỳ gợi ý nào về cách tôi có thể chặn tập kết quả đầu tiên? Tại sao nó có ngay cả với NOCOUNT?
Bỏ qua bộ bản ghi đầu tiên trong ASP không phải là một tùy chọn. Tôi cần một giải pháp "cơ sở dữ liệu duy nhất".
Một vài câu trả lời chỉ ra rằng bạn có thể thay đổi từ SELECT thành RETURN, nhưng điều gì sẽ xảy ra nếu proc được lưu trữ phải chọn, và bạn không thể thay đổi nó? Tôi tự hỏi nếu nó có thể "nuốt" một kết quả thiết lập như thế. –