"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como carregar e exibir imagens de um banco de dados MySQL em C#?

Como carregar e exibir imagens de um banco de dados MySQL em C#?

Publicado em 2024-11-08
Navegar:915

How to Load and Display Images from a MySQL Database in C#?

Como recuperar e exibir imagens do banco de dados MySQL

Recuperar imagens de um banco de dados MySQL em um controle PictureBox requer uma abordagem específica com byte adequado manipulação de matriz. As etapas a seguir demonstram o processo:

Inserir imagem no banco de dados MySQL

  1. Use a biblioteca MySql.Data.MySqlClient para conectividade do banco de dados MySQL.
  2. Converta a imagem do arquivo em uma matriz de bytes: byte[] bytes = File.ReadAllBytes(ofd.FileName);
  3. Crie um MySqlCommand e insira a matriz de bytes no banco de dados usando um parâmetro:

    cmd.Parameters.AddWithValue("@image", bytes);
    cmd.ExecuteNonQuery();

Recuperar imagem do banco de dados MySQL

  1. Uma matriz de bytes[] é usada para armazenar a imagem recuperada : byte[] ImageByte = new byte[0];
  2. Execute uma consulta com um parâmetro para recuperar a imagem:

    cmd.Parameters.AddWithValue("@id", Properties.Settings.Default.idImg);
    MySqlDataReader row;
    row = cmd.ExecuteReader();
  3. Lê a matriz de bytes da imagem da linha:

    while (row.Read())
    {
     ImageByte = (Byte[])(row["image"]); 
    }

Converter matriz de bytes em imagem e exibição

  1. Converta a matriz de bytes em uma imagem usando o Helper.ByteArrayToImage método:

    roundPictureBox1.Image = byteArrayToImage(ImageByte);
    roundPictureBox1.Refresh();

Melhorias

  • Considere usar técnicas de otimização de imagem para garantir que as imagens não resultem em tamanhos de arquivo excessivos.
  • Armazene o nome do arquivo original no banco de dados para facilitar a recuperação e o gerenciamento fora do banco de dados.
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3