Tôi mới viết thủ tục được lưu trữ. Vì vậy, tôi đã viết một với các tham số đầu ra và muốn truy cập vào giá trị đầu ra, nóng để làm điều đó.Cách sử dụng tham số OUTPUT trong Quy trình đã lưu
My Stored Procedure:
ALTER PROCEDURE selQuery
(
@id int, @code varchar(50) OUTPUT
)
AS
SELECT RecItemCode = @code, RecUsername from Receipt where RecTransaction = @id
RETURN @code
Nếu cố gắng để thiết lập "@ code = RecItemCode" nhận được lỗi như sau: "Một câu lệnh SELECT mà gán một giá trị cho một biến phải không được kết hợp với các hoạt động Phục hồi dữ liệu"
Và tôi đang sử dụng Stored Procedure như:
con.Open();
cmd.Parameters.AddWithValue("@id", textBox1.Text);
SqlParameter code = new SqlParameter("@code", SqlDbType.Int);
code.Direction = ParameterDirection.Output;
cmd.Parameters.Add(code);
SqlDataReader sdr = cmd.ExecuteReader();
MessageBox.Show(cmd.Parameters["@code"].Value.ToString()); // getting error
con.Close();
Lỗi: "Đối tượng tham chiếu không được đặt để một thể hiện của một đối tượng." Tôi muốn lấy giá trị của tham số đầu ra. Làm thế nào để có được điều đó?
Cảm ơn.
cảm ơn anthony, nó đã giúp rất nhiều .... cảm ơn nhiều – Sandy
Cảm ơn bạn và +1. 'object obj = cmd.ExecuteScalar();' làm việc hoàn hảo. Tôi đã có thể thực hiện những gì tôi cần trong hai dòng mã C#, thứ hai là 'myString = obj.ToString();'. – FumblesWithCode