私はユーザ入力を受け取り、ユーザ入力から画像を生成するWebアプリケーションを持っています。これらの画像はシーケンスで生成され、毎日リセットする必要があります。ユーザ入力を伴うシーケンシャルなストアドプロシージャ
少なくともシーケンス値、シーケンス、および日付をデータベースに格納しようとしていますが、更新されません。
これまでのところ、データベースは更新されず、コードは正常に機能していません。私はどこに問題があるのか分かりません。私は同様のヘルプをオンラインで見つけましたが、うまくいかないようでした。
ストアドプロシージャ:
ALTER PROCEDURE barcode_insert(
@Seq_Num int,
@date datetime,
@ImageName varchar
)
AS
BEGIN
SET NOCOUNT ON
UPDATE ImageInfoTable
SET imagedate = @date,ImageNum = @Seq_Num
WHERE image_name = @ImageName
END
RETURN @Seq_Num
C#コード
protected void gen_barcode(object sender, EventArgs e)
{
int n;
int i = Int32.Parse(amount.Text);
string date_picker = datepicker.Text;
SqlConnection conn = new SqlConnection(GetConnectionString());
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "barcode_insert"
cmd.Parameters.AddWithValue("@Seq_Num", amount.Text);
cmd.Parameters.AddWithValue("@date", date_picker);
cmd.Parameters.AddWithValue("@ImageName", CheckBox.Checked);
if (CheckBox_Code.Checked)
{
//generate image code
}
cmd.Connection.Open();
cmd.ExecuteNonQuery();
conn.Close();
}
私は、彼らはのを単にタイプミスしているが、あなたのストアドプロシージャは、夫婦の問題を持つことになりますと確信している:= +は演算子ではないですし、SETステートメントの最初の列の後にカンマが必要です。私はあなたがこれを意味したと思う: 'SET imagedate = @date、 ImageNum = @ Seq_Num'? – ghg565
彼らは、私はお詫び申し上げます、質問のストアドプロシージャコードを編集しました – walangala
私が見る他の問題は、datepickerコントロールの値の代わりに、パラメータでdatepickerコントロールを使用していることです。 date_pickerである必要があります。 – ghg565