Я хочу сделать запрос на обновление, который обновит все данные в текстовом поле, поле со списком и поле изображения. Когда я создал запрос для текстового поля и поля со списком, он работает нормально. но когда я добавляю двоичные данные изображения Picturebox, каким-то образом запрос перестает работать, и он также не показывает никаких ошибок, он просто не обновляет данные. Я хочу обновить все данные в базе данных
Вот код
private void updatebill()
{
if (cn.State == ConnectionState.Closed)
{
cn.Open();
}
da = new OleDbDataAdapter();
dt = new DataTable();
ds = new DataSet();
string str;
str = "UPDATE BillTable set [Bill_No]= '"+ billno.Text + "', [Bill_Year] = '" + fylabel.Text + "', [Group_ID]= '" + groupidDB + "', [Vendor_Id]= '" + vendoridDB + "', [Amount]= '" + amount.Text + "', Picture1= @pict1 , Picture2= @pict2, Picture3= @pict3, Picture4= @pict4 where (ID= @billID)";
cmd = new OleDbCommand(str, cn);
cmd.Parameters.AddWithValue("@billID", Convert.ToString(BillIdentity.Text));
cmd.Parameters.AddWithValue("@voucher", Convert.ToString(voucher.Text));
// picture box
if (PictureBox1.Image != null)
{
Bitmap bitmap = new Bitmap(PictureBox1.Image);
byte[] pic = ImageToBytes(bitmap, System.Drawing.Imaging.ImageFormat.Jpeg);
cmd.Parameters.AddWithValue("@pict1", pic);
}
else
{
cmd.Parameters.AddWithValue("@pict1", OleDbType.Binary).Value = DBNull.Value;
}
if (pictureBox2.Image != null)
{
Bitmap bitmap = new Bitmap(pictureBox2.Image);
byte[] pic2 = ImageToBytes(bitmap, System.Drawing.Imaging.ImageFormat.Jpeg);
cmd.Parameters.AddWithValue("@pict2", pic2);
}
else
{
cmd.Parameters.AddWithValue("@pict2", OleDbType.Binary).Value = DBNull.Value;
}
if (pictureBox3.Image != null)
{
Bitmap bitmap = new Bitmap(pictureBox3.Image);
byte[] pic3 = ImageToBytes(bitmap, System.Drawing.Imaging.ImageFormat.Jpeg);
cmd.Parameters.AddWithValue("@pict3", pic3);
}
else
{
cmd.Parameters.AddWithValue("@pict3", OleDbType.Binary).Value = DBNull.Value;
}
if (pictureBox4.Image != null)
{
Bitmap bitmap = new Bitmap(pictureBox4.Image);
byte[] pic4 = ImageToBytes(bitmap, System.Drawing.Imaging.ImageFormat.Jpeg);
cmd.Parameters.AddWithValue("@pict4", pic4);
}
else
{
cmd.Parameters.AddWithValue("@pict4", OleDbType.Binary).Value = DBNull.Value;
}
cmd.ExecuteNonQuery();
cn.Close();
}
private byte[] ImageToBytes(Image image, System.Drawing.Imaging.ImageFormat format)
{
using (System.IO.MemoryStream menStream = new System.IO.MemoryStream())
{
image.Save(menStream, format);
return menStream.ToArray();
}
}