1:ImportsMySql.Data.MySqlClient 2:ImportsSystem.IO
Agora crie as variáveis globais;
1:DimNomeArquivoFotoAs String
E no botão para buscar a foto;
1:Try2:DimSEARCHAs NewOpenFileDialog 3: SEARCH.Filter = "Images | *.jpg" 4:IfSEARCH.ShowDialog = DialogResult.OKThen5: NomeArquivoFoto = SEARCH.FileName 6: PictureBox1.Image = Image.FromFile(SEARCH.FileName) 7:End If8:CatchexAs Exception9:End Try
No botão salvar adicione;
1:Dim_conexaoMySQLAs String= SERVER_CONF() 2:DimconAsMySqlConnection =NewMySqlConnection(_conexaoMySQL) 3:DimcmdAsMySqlCommand 4:DimfsAsFileStream 5:DimbrAsBinaryReader 6:Try7:'Convertendo a imagem em Byte8:DimarquivoImagemAs String= nomeArquivoImagem 9:DimDadosImagem()As Byte10: fs =NewFileStream(arquivoImagem, FileMode.Open, FileAccess.Read) 11: br =NewBinaryReader(fs) 12: DadosImagem = br.ReadBytes(CType(fs.Length, Integer)) 13: br.Close() 14: fs.Close() 15:DimCmdSqlAs String= "INSERT INTO `BANCO DE DADOS`.`TABELA` ( `COLUNA_NOME`, `COLUNA_IDADE`, `COLUNA_IMAGEM`) VALUES (@Nome, @Idade, @Imagem);" 16: cmd = New MySqlCommand(CmdSql, con) 17: cmd.Parameters.Add("@Nome", MySqlDbType.VarChar, 100) 18: cmd.Parameters.Add("@Idade", MySqlDbType.Int32, 5) 19: cmd.Parameters.Add("@Imagem", MySqlDbType.Blob) 20: cmd.Parameters("@Nome").Value = txtnome.text 21: cmd.Parameters("@Idade").Value = txtidade.text 22: cmd.Parameters("@Imagem").Value = DadosImagem 23: con.Open() 24:DimlinhasAfetadasAs Integer= cmd.ExecuteNonQuery() 25:If(linhasAfetadas > 0)Then26: MessageBox.Show("A imagem foi salva com sucesso !", "Salvar Imagem", MessageBoxButtons.OK, MessageBoxIcon.Information) 27:Else28: MessageBox.Show("Dados incompletos !", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error) 29:End If30:CatchexAs Exception31: MsgBox(ex.ToString()) 32:Finally33:Ifcon.State = ConnectionState.OpenThen34: con.Close() 35:End If36:End Try
Lembrando que, no seu banco de dados a coluna imagem tem que ser BLOB para caber a imagem!
Agora para ler a imagem, coloque no botão buscar imagem;
1:Try2:DimconnAs NewMySqlConnection 3:DimmyDataAs NewDataTable 4:DimdrAsMySqlDataReader 5:DimSQLAs String6:DimbrAsBinaryReader 7: conn =NewMySqlConnection 8: conn.ConnectionString = "server=localhost;user id=root;password=123456;database=test" 9: conn.Open() 10: SQL = "SELECT id_CLIENTE, CLIENTE_NOME, CLIENTE_IMAGEM FROM `BANCO_DE_DADOS`.`TABELA_DO_BD`;" 11:Try12:DimcmdAsMySqlCommand =NewMySqlCommand(SQL, conn) 13: dr = cmd.ExecuteReader(CommandBehavior.SingleRow) 14:Ifdr.HasRowsThen15: dr.Read() 16: label1.text = dr.Item("id_CLIENTE") 17: label2.text = dr.Item("CLIENTE_NOME") 18:'Convertendo a imagem de Byte para Bitmap para exibir em uma PictureBox!19:DimimagemAsBitmap 20:DimbloblAsByte() = DirectCast(dr.Item("CLIENTE_IMAGEM"), Byte()) 21:Usingms =NewMemoryStream(blobl) 22: imagem =NewBitmap(ms) 23:End Using24: PictureBox1.Image = imagem 25:End If26:CatchexAs Exception27: MsgBox(ex.ToString()) 28:Finally29:End Try30: conn.Close() 31:CatchexAsMySqlException 32: MsgBox(ex.ToString()) 33:End Try
Pronto, agora temos um codigo para salvar imagens no banco de dados e outro para ler imagens em byte e convertendo para Bitmap para exibi-las em uma PictureBox...
Abrç....
0 comentários:
Postar um comentário