Ошибка преобразования типа данных nvarchar в числовой
Во-первых,это мой первый раз, когда я задаю вопрос о проблеме, с которой я сталкиваюсь здесь, поэтому приношу извинения за любые проблемы, которые я вызываю.
есть небольшая проблема с этой строкой кода, скажем, я выставляю цену на продукт, скажем, его 15 баксов, с этим кодом я могу поставить 15 баксов без проблем на sql. Но если я решу написать 15,10, то программа пойдет "ошибка преобразования типа данных nvarchar в числовой".
Вот мой код
private void btnKaydet_Click(object sender, EventArgs e) { try { if(MessageBox.Show("Bu ürünü kaydetmek istediğinize emin misiniz?","Save Product", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { string bid = ""; string cid=""; cn.Open(); cm = new SqlCommand("Select id from tblBrand where brand like '" + cbbMarka.Text + "'", cn); dr = cm.ExecuteReader(); dr.Read(); if (dr.HasRows) { bid = dr[0].ToString(); } dr.Close(); cn.Close(); cn.Open(); cm = new SqlCommand("Select id from tblCategory where category like '" + cbbKategori.Text + "'", cn); dr = cm.ExecuteReader(); dr.Read(); if (dr.HasRows) { cid = dr[0].ToString(); } dr.Close(); cn.Close(); cn.Open(); cm = new SqlCommand("INSERT INTO tblProduct (pcode, pdesc, bid, cid, price) VALUES(@pcode, @pdesc, @bid, @cid, @price)", cn); cm.Parameters.AddWithValue("@pcode",textÜkodu.Text); cm.Parameters.AddWithValue("@pdesc", textAçklma.Text); cm.Parameters.AddWithValue("@bid", bid); cm.Parameters.AddWithValue("@cid", cid); cm.Parameters.AddWithValue("@price", textFiyat.Text); cm.ExecuteNonQuery(); cn.Close(); MessageBox.Show("Ürün Başarıyla Kaydedildi."); Clear(); flist.ÜrünleriYükle(); } }catch(Exception ex) { cn.Close(); MessageBox.Show(ex.Message); } }
это кнопка для сохранения (не обращайте внимания на язык :D ). Может ли кто-нибудь показать мне, как я могу избавиться от этой маленькой проблемы?
Что я уже пробовал:
я попытался удалить @ из цены, но это не сработало, и поискал несколько советов в сети, но ничего не решило.