I am trying to insert product details into my product table to be stored and later on selected from to display
I have already tried
cmd.Parameters.AddWithValue("ProdPrice", Convert.ToInt32(txtProdPrice.Text));
cmd.Parameters.AddWithValue("ProdPrice", decimal.Parse(txtProdPrice.Text));
cmd.Parameters.AddWithValue("prodStock", int.Parse(txtProdStock.Text));
product table
CREATE TABLE [dbo].[Product] (
[ProdID] INT IDENTITY (1, 1) NOT NULL,
[ProdName] NVARCHAR (50) NOT NULL,
[ProdPrice] DECIMAL (18, 2) NULL,
[ProdDesc] NVARCHAR (MAX) NULL,
[ImageName] NVARCHAR (255) NULL,
[Size] INT NULL,
[ImageData] VARBINARY (MAX) NULL,
[ProdBrand] NVARCHAR (50) NULL,
[ProdStock] INT NULL,
PRIMARY KEY CLUSTERED ([ProdID] ASC)
.ASPX.CS Codes
string cs = ConfigurationManager.ConnectionStrings["DataBase"].ConnectionString;
using (SqlConnection con = new SqlConnection(cs))
{
SqlCommand cmd = new SqlCommand("insert into Product values (@ProdName, @ProdDesc, @ProdPrice, @ImageName, @Size, @ImageData, @ProdBrand, @ProdStock);", con);
cmd.Parameters.AddWithValue("ProdName", txtProdName.Text);
cmd.Parameters.AddWithValue("ProdDesc", txtProdDesc.Text);
cmd.Parameters.AddWithValue("ProdPrice", decimal.Parse(txtProdPrice.Text));
cmd.Parameters.AddWithValue("ImageName", fileName);
cmd.Parameters.AddWithValue("Size", fileSize);
cmd.Parameters.AddWithValue("ImageData", bytes);
cmd.Parameters.AddWithValue("ProdBrand", ddlBrand.SelectedItem.Text);
cmd.Parameters.AddWithValue("prodStock", int.Parse(txtProdStock.Text));
con.Open();
cmd.ExecuteNonQuery();
con.Close();
lblImageResult.Visible = true;
lblImageResult.Text = "Upload Successful";
lblImageResult.ForeColor = System.Drawing.Color.Green;
All results are still the same, "error converting datatype nvarchar to numeric"
SqlCommand cmd = new SqlCommand("insert into Product (ProdName, ProdDesc, ProdPrice, ...) values (@ProdName, @ProdDesc, @ProdPrice, @ImageName, @Size, @ImageData, @ProdBrand, @ProdStock);", con);Here you are trying to insert the ProdName in the ProdId fieldINSERT INTO TABLE (Field1, Field2 ... FiledN) VALUES (Value1, Value2 ... ValueN)else sql server will populate them in the order they where defined while creating the table