0
トピックに関連するトピックがいくつかありますが、問題を解決できませんでした。入力文字列の形式が正しくありませんでした。コマンドパラメータを追加する#
毎回同じメッセージが届きます。
手順:
USE [onmuhasebe]
GO
/****** Object: StoredProcedure [dbo].[stok] Script Date: 5.01.2017 15:34:45 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[stok]
(@cari NVARCHAR(50),
@urun NVARCHAR(50),
@miktar INT
)
AS
BEGIN
update stok_giris SET miktar= miktar- @miktar WHERE [email protected] and [email protected]
END
私はここで減算を必要とします。あなたは両方とも@miktar
しかし、三つの値を受け入れ手順であっても、コマンドに4つのパラメータが追加されているAddWithValue
Add
を使用してすることで
try
{
baglanti.Open();
//int miktar = Int32.Parse(textBox4.Text);
//int miktar = Convert.ToInt32(textBox4.Text);
int miktar = Convert.ToInt32(textBox4.Text.Trim());
SqlCommand mySqlCommand = new SqlCommand("stok", baglanti);
mySqlCommand.CommandType = CommandType.StoredProcedure;
mySqlCommand.Parameters.AddWithValue("@cari", comboBox2.SelectedItem.ToString());
mySqlCommand.Parameters.AddWithValue("@urun", comboBox5.SelectedItem.ToString());
mySqlCommand.Parameters.Add("@miktar", SqlDbType.Int);
mySqlCommand.Parameters.AddWithValue("@miktar", miktar);
mySqlCommand.ExecuteNonQuery();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
@nozzleman:ありがとう –