我要计算一个总数,修理费=修理小时*修理小时工资,其中修理小时在本对话框中有,修理小时工资要去员工表找
CREATE PROCEDURE dbo.Z3prifix_1
(
@hid_fix_dan int,
@hpri_fix float output
)
AS
select @hpri_fix = hfix_time * (SELECT dbo.Z2.gpay_hour
FROM dbo.Z3 INNER JOIN
dbo.Z2 ON dbo.Z3.hid_no = dbo.Z2.gid_no)
from Z3
where hid_fix_dan = @hid_fix_dan
return
GO
public string priFix(int hid_fix_dan)
{//统计修理费
SqlCommand priFix = new SqlCommand();
priFix.Connection=this.sqlConnection1;
priFix.CommandType=CommandType.StoredProcedure;
priFix.CommandText="dbo.Z3prifix_1";//调用存储过程
SqlParameter parinput=priFix.Parameters.Add("@hid_fix_dan",SqlDbType.Int);
parinput.Direction=ParameterDirection.Input;
parinput.Value=hid_fix_dan;//给参数赋值
SqlParameter paroutput=priFix.Parameters.Add("@hpri_fix",SqlDbType.Float);
paroutput.Direction=ParameterDirection.Output;
try
{
this.sqlConnection1.Open();
priFix.ExecuteNonQuery();
this.sqlConnection1.Close();
return Convert.ToString(paroutput.Value);
}
catch(System.Exception e)
{
Console.WriteLine(e.ToString());
this.sqlConnection1.Close();
}
return null;
}现在catch说:{"hpri_part 不是过程 Z3pripart_1 的参数。" }
CREATE PROCEDURE dbo.Z3prifix_1
(
@hid_fix_dan int,
@hpri_fix float output
)
AS
select @hpri_fix = hfix_time * (SELECT dbo.Z2.gpay_hour
FROM dbo.Z3 INNER JOIN
dbo.Z2 ON dbo.Z3.hid_no = dbo.Z2.gid_no)
from Z3
where hid_fix_dan = @hid_fix_dan
return
GO
public string priFix(int hid_fix_dan)
{//统计修理费
SqlCommand priFix = new SqlCommand();
priFix.Connection=this.sqlConnection1;
priFix.CommandType=CommandType.StoredProcedure;
priFix.CommandText="dbo.Z3prifix_1";//调用存储过程
SqlParameter parinput=priFix.Parameters.Add("@hid_fix_dan",SqlDbType.Int);
parinput.Direction=ParameterDirection.Input;
parinput.Value=hid_fix_dan;//给参数赋值
SqlParameter paroutput=priFix.Parameters.Add("@hpri_fix",SqlDbType.Float);
paroutput.Direction=ParameterDirection.Output;
try
{
this.sqlConnection1.Open();
priFix.ExecuteNonQuery();
this.sqlConnection1.Close();
return Convert.ToString(paroutput.Value);
}
catch(System.Exception e)
{
Console.WriteLine(e.ToString());
this.sqlConnection1.Close();
}
return null;
}现在catch说:{"hpri_part 不是过程 Z3pripart_1 的参数。" }
奇怪了,你的代码里根本就没有hpri_part
try 前面+这2行,试试priFix.Parameters.add(parinput);
priFix.Parameters.add(paroutput);