이
create procedure [dbo].[TestRecordSelectMInfo3]
@GRNo varchar(4),
@SName varchar(35) output,
@Class Varchar(15) output
as
begin
Select @SName = Students.SName, @Class = Class.Class from Students inner join Class on Students.ClassId = Class.ClassId where Students.GRNo = @GRNo
end
USAGE 같이 당신의 절차를 변경 :
private void GetData()
{
cmd.Parameters.Clear();
cmd.Parameters.Add("@GRNo", SqlDbType.VarChar).Value = tbgrno.Text;
SqlParameter SName = new SqlParameter("@SName", SqlDbType.VarChar);
SqlParameter Class = new SqlParameter("@Class", SqlDbType.VarChar);
SName.Direction = ParameterDirection.Output;
Class.Direction = ParameterDirection.Output;
SName.Size = 35;
Class.Size = 15;
cmd.Parameters.Add(SName);
cmd.Parameters.Add(Class);
dm.ExectNonActQuery("TestRecordSelectMInfo", cmd);
tbsname.Text = cmd.Parameters["@SName"].Value.ToString();
tbclass.Text = cmd.Parameters["@Class"].Value.ToString();
}
public void ExectNonActQuery(string spname, SqlCommand command)
{
SqlConnection cn = new SqlConnection("connection string");
cmd = command;
cmd.Connection = cn;
cmd.CommandText = spname;
cmd.CommandType = CommandType.StoredProcedure;
cmd.ExecuteNonQuery();
}
내가 그렇게하는 방법을 알고 ... 주어진 절차는 예입니다. 실제 프로는 조금 길어서 간단한 프로로 바뀌 었습니다. 나는 학생을 설정해야합니다. 이름과 클래스. 확인 가능한 클래스를 읽고 그것을 읽습니다. 내 질문에 실제 코딩을 게시 하시겠습니까 ???? ???? –
사실, 아마도 그렇게 할 필요는 없습니다. 매우 드문 경우입니다. 어쨌든, 나는 당신이 그런 식으로 주장하는 경우에 대비하여 나의 대답을 편집했는데, 나는 그것을 권하지 않습니다. – JohnFx
출력 매개 변수에 대한 전체적인 부분 .... 사람들이 당신을 도울 것으로 예상되는 경우 최소한 여기에 약간의 노력을 기울이십시오. – JohnFx