1

MS Visual Studio 2010 と SQL Server 2008 R2 を使用しています。

C# アプリでストアド プロシージャを使用しようとしていますが、奇妙なエラーが発生しました。

テーブル定義は次のとおりです。

create table bed_allotment
(
    bill_id bigint,
    bed_category varchar(50),
    for_days int
)

ストアド プロシージャ:

create procedure AddBed
(
    @bill_id bigint,
    @bed_category varchar(50),
    @for_days int
)
as
begin
    insert into bed_allotment 
    values (@bill_id, @bed_category, @for_days)
end

ボタンクリック時のコード:

private void button1_Click(object sender, EventArgs e)
{
    SqlConnection con = new SqlConnection(conString);
    SqlCommand AddBedCommand = new SqlCommand("AddBed", con);

    AddBedCommand.Parameters.AddWithValue("@bill_id", 1330);
    AddBedCommand.Parameters.AddWithValue("@bed_category", "ICCU");
    AddBedCommand.Parameters.AddWithValue("@for_days", 6);

    con.Open();
    AddBedCommand.ExecuteNonQuery();
    con.Close();
}

これを実行すると、エラーが発生します。それは言う

SQL プロシージャーは、指定されていないパラメーター '@bill_id' を予期しています

間違いは何ですか?どんな提案でも大いに役立ちます。ありがとうございました!

4

2 に答える 2