Obsah obrázku jste nikdy nenahráli do databáze. To je jen název souboru.
Řekněme jako příklad, že máte cestu k souboru, se kterou můžete pracovat (s ohledem na obsah otázky se zdá, že ano). Ve své aplikaci byste to nahráli do databáze v tomto formátu:
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();
Mějte prosím na paměti, že váš pic
pole bude pravděpodobně muset změnit typ dat. Běžný typ těchto informací je VARBINARY
.
Další částí je načtení souboru do PictureBoxu. K tomu budete muset VYBRAT data ven:
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);
}
A o tom by to mělo být. Možná budete chtít provést lepší bezpečnostní kontroly, ale toto by vám mělo pomoci začít.