'Declara os imports para leitura de
dados
Imports
System.Data.OleDb
Imports
System.IO
Public
Class Form1
Inherits
System.Windows.Forms.Form
'Declara a variavel para a conexão
Dim conn As New System.Data.OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
& _
Replace(Application.StartupPath, "bin", "")
& _
"DB.mdb;Mode=ReadWrite;Persist Security
Info=False")
Private Sub Button1_Click(ByVal
sender As System.Object,
ByVal e As
System.EventArgs) Handles
Button1.Click
'Abre a estrutura de tramento de erro caso
acontecer algum
Try
'Defini o titulo da caixa de dialogo
Me.OpenFileDialog1.Title = "Abrir
imagem"
'Defini os tipos de imagens que poderão ser escolhidas
Me.OpenFileDialog1.Filter = "Bmp
Files(*.bmp)|*.bmp|Gif Files(*.gif)|*.gif|Jpg Files(*.jpg)|*.jpg"
'Abre a janela para buscar a imagem
If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
'PictureBox recebe a imagem que foi
selecionada
PictureBox1.Image = Image.FromFile(OpenFileDialog1.FileName)
Else
'Informa ao usuário que foi cancelada a operação
de seleção de imagem
MsgBox("Operação cancelada pelo usuário.",
MsgBoxStyle.Exclamation, "OK")
End If
Catch
ex As Exception
'Informa qual o erro que aconteceu
MsgBox(ex.Message)
End Try
End Sub
'Salva as imagens
Private Sub Button3_Click(ByVal
sender As System.Object,
ByVal e As
System.EventArgs) Handles
Button3.Click
'Abre a estrutura de tramento de erro caso
acontecer algum
Try
'Abre a
imagem
Dim
fs As FileStream
= New FileStream(OpenFileDialog1.FileName,
FileMode.Open, FileAccess.Read)
'Declara uma variavel que irá receber o conteúdo
do textbox ( o nome da imagem )
Dim NomeImagem As String = TextBox1.Text
'Lê a saída em binary reader
Dim
r As BinaryReader
= New BinaryReader(fs)
'Declara um byte array para salvar o conteúdo
do arquivo salvo
Dim FileByteArray(fs.Length - 1) As
Byte
r.Read(FileByteArray, 0, CInt(fs.Length))
'Comando SQL para salvar o nome e a imagem no
banco de dados.
Dim sql As String = "INSERT
INTO Imagens (NomeImagem,Foto) VALUES (?,?)"
'Declara
a OleDbCommand Object
Dim
cmd As New
System.Data.OleDb.OleDbCommand(sql, conn)
'Add
Parameter
cmd.Parameters.Add("@NomeImagem", System.Data.OleDb.OleDbType.VarChar).Value = TextBox1.Text
cmd.Parameters.Add("@Foto", System.Data.OleDb.OleDbType.Binary).Value = FileByteArray
'Abre a conexão com o banco de dados.
conn.Open()
'Executa a query no banco de dados
cmd.ExecuteNonQuery()
'Informa ao usuário que a imagem foi inserida
MsgBox("Imagem Inserida com
Sucesso!", MsgBoxStyle.Exclamation,
"OK")
'Fecha a conexão com o banco de dados.
conn.Close()
Catch
ex As Exception
'Informa qual o erro que aconteceu
MsgBox(ex.Message)
End Try
End Sub
'Criar instância para a imagem do
FileByteArray
Private Sub DrawToScale(ByVal img As Image)
'Converte a imagem para o tipo Bitmap
PictureBox1.Image
= New Bitmap(img)
End Sub
'Ler a imagem
Private Sub Button2_Click(ByVal
sender As System.Object,
ByVal e As
System.EventArgs) Handles
Button2.Click
'Abre a estrutura de tramento de erro caso
acontecer algum
Try
'Abre uma caixa de dialogo para informar o nome da imagem
que deseja buscar
Dim fn As String = InputBox("Informe
o nome da imagem para buscar:")
'Comando SQl para retornar a imagem que foi informada como
parâmentro de busca
Dim sql As String = "SELECT
Foto FROM Imagens WHERE NomeImagem='" & fn & "'"
'Abre a conexão com o banco de dados.
conn.Open()
'Realiza a conexão com o bancod e dados e depois executa o
comnando SQl
Dim cmd As OleDbCommand = New
OleDbCommand(sql, conn)
'O campo textbox recebe o nome que foi
digitado da imagem para realizar a busca
TextBox1.Text = fn
'Declara uma variavel do tipo Byte
Dim b() As Byte
'Executa o comnado para buscar a imagem
b
= cmd.ExecuteScalar()
'Se b for maior que 0 então
If (b.Length > 0) Then
'Declara a variavel stream como novo fluxo de
memória
Dim stream As New MemoryStream(b, True)
'Escreve o fluxo de memória
stream.Write(b, 0, b.Length)
'Imagem de exibição
DrawToScale(New Bitmap(stream))
'Fecha o fluxo de memória
stream.Close()
End If
'Fecha a conexão com o banco de dados.
conn.Close()
Catch
ex As Exception
'Informa qual o erro que aconteceu
MsgBox(ex.Message)
End Try
End Sub
'Fecha a aplicação
Private Sub Button4_Click(ByVal
sender As System.Object,
ByVal e As
System.EventArgs) Handles
Button4.Click
'Comando encerra a aplicação
End
End Sub
'Deleta Imagem
Private Sub Button5_Click(ByVal
sender As System.Object,
ByVal e As
System.EventArgs) Handles
Button5.Click
'Abre a estrutura de tramento de erro caso
acontecer algum
Try
'Abre uma caixa de dialogo para informar o nome da imagem
que deseja deletar
Dim fn As String = InputBox("Informe
o nome da imagem para deletar:")
'Comando SQl para deletar a imagem que foi informada como
parâmentro de exclusão
Dim sql As String = "DELETE
FROM Imagens WHERE NomeImagem='" & fn & "'"
'Abre a conexão com o banco de dados.
conn.Open()
'Realiza a conexão com o bancod e dados e depois executa o
comnando SQl
Dim cmd As OleDbCommand = New
OleDbCommand(sql, conn)
'Executa a query no banco de dados
cmd.ExecuteNonQuery()
'Informa ao usuário que a imagem foi deletada
MsgBox("Imagem Deletada com
Sucesso.", MsgBoxStyle.Exclamation,
"OK")
'Fecha a conexão com o banco de dados.
conn.Close()
Catch ex As Exception
'Informa qual o erro que aconteceu
MsgBox(ex.Message)
End Try
End Sub
End Class
0 comentários:
Postar um comentário