1:
Imports
MySql.Data.MySqlClient 2:
Imports
System.IO
Agora crie as variáveis globais;
1:
Dim
NomeArquivoFoto
As String
E no botão para buscar a foto;
1:
Try
2:
Dim
SEARCH
As New
OpenFileDialog 3: SEARCH.Filter = "Images | *.jpg" 4:
If
SEARCH.ShowDialog = DialogResult.OK
Then
5: NomeArquivoFoto = SEARCH.FileName 6: PictureBox1.Image = Image.FromFile(SEARCH.FileName) 7:
End If
8:
Catch
ex
As Exception
9:
End Try
No botão salvar adicione;
1:
Dim
_conexaoMySQL
As String
= SERVER_CONF() 2:
Dim
con
As
MySqlConnection =
New
MySqlConnection(_conexaoMySQL) 3:
Dim
cmd
As
MySqlCommand 4:
Dim
fs
As
FileStream 5:
Dim
br
As
BinaryReader 6:
Try
7:
'Convertendo a imagem em Byte
8:
Dim
arquivoImagem
As String
= nomeArquivoImagem 9:
Dim
DadosImagem()
As Byte
10: fs =
New
FileStream(arquivoImagem, FileMode.Open, FileAccess.Read) 11: br =
New
BinaryReader(fs) 12: DadosImagem = br.ReadBytes(CType(fs.Length, Integer)) 13: br.Close() 14: fs.Close() 15:
Dim
CmdSql
As 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:
Dim
linhasAfetadas
As Integer
= cmd.ExecuteNonQuery() 25:
If
(linhasAfetadas > 0)
Then
26: MessageBox.Show("A imagem foi salva com sucesso !", "Salvar Imagem", MessageBoxButtons.OK, MessageBoxIcon.Information) 27:
Else
28: MessageBox.Show("Dados incompletos !", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error) 29:
End If
30:
Catch
ex
As Exception
31: MsgBox(ex.ToString()) 32:
Finally
33:
If
con.State = ConnectionState.Open
Then
34: con.Close() 35:
End If
36:
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:
Try
2:
Dim
conn
As New
MySqlConnection 3:
Dim
myData
As New
DataTable 4:
Dim
dr
As
MySqlDataReader 5:
Dim
SQL
As String
6:
Dim
br
As
BinaryReader 7: conn =
New
MySqlConnection 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:
Try
12:
Dim
cmd
As
MySqlCommand =
New
MySqlCommand(SQL, conn) 13: dr = cmd.ExecuteReader(CommandBehavior.SingleRow) 14:
If
dr.HasRows
Then
15: 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:
Dim
imagem
As
Bitmap 20:
Dim
blobl
As
Byte() = DirectCast(dr.Item("CLIENTE_IMAGEM"), Byte()) 21:
Using
ms =
New
MemoryStream(blobl) 22: imagem =
New
Bitmap(ms) 23:
End Using
24: PictureBox1.Image = imagem 25:
End If
26:
Catch
ex
As Exception
27: MsgBox(ex.ToString()) 28:
Finally
29:
End Try
30: conn.Close() 31:
Catch
ex
As
MySqlException 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