U heeft de inhoud van de afbeelding nooit geüpload naar de database. Dat is alleen de bestandsnaam.
Stel, als voorbeeld, dat je een bestandspad hebt om mee te werken (het lijkt erop dat je dat doet, gezien de inhoud van de vraag). In uw aanvraag zou u dit in dit formaat naar de database uploaden:
byte[] image = File.ReadAllBytes("D:\\11.jpg");
SqlCommand sqlCommand = new SqlCommand("INSERT INTO imageTest (pic_id, pic) VALUES (1, @Image)", yourConnectionReference);
sqlCommand.Parameters.AddWithValue("@Image", image);
sqlCommand.ExecuteNonQuery();
Houd er rekening mee dat uw pic
veld zal hoogstwaarschijnlijk het gegevenstype moeten wijzigen. Een veelgebruikt type voor deze informatie is VARBINARY
.
Het volgende deel is het inlezen van het bestand in een PictureBox. Hiervoor moet je de gegevens SELECTEREN:
SqlDataAdapter dataAdapter = new SqlDataAdapter(new SqlCommand("SELECT pic FROM imageTest WHERE pic_id = 1", yourConnectionReference));
DataSet dataSet = new DataSet();
dataAdapter.Fill(dataSet);
if (dataSet.Tables[0].Rows.Count == 1)
{
Byte[] data = new Byte[0];
data = (Byte[])(dataSet.Tables[0].Rows[0]["pic"]);
MemoryStream mem = new MemoryStream(data);
yourPictureBox.Image= Image.FromStream(mem);
}
En daar zou het over moeten gaan. Misschien wilt u betere veiligheidscontroles uitvoeren, maar dit zou u op weg moeten helpen.