j.mendes24 Posted May 13, 2009 at 05:26 PM Report #263912 Posted May 13, 2009 at 05:26 PM bem pessoal, eu fiz uma base de dados atraves do vb.net em sql. dentro dessa base de dados fiz uma tabela que é a tabela_imagens. na tabela_imagens os campos sao: cod_imagem (int), imagem_verdadeira (image), imagem_falsa (imagem), sair (bit). na tabela nenhum campo permite ser NULL. eu gostava de saber como e que poderia introduzir as imagens na tabela, é que nao sei como é. eu pesquisei, e encontrei um codigo para introduzir as imagens atraves de um formulário, mas com este codigo ele nao guarda nada na base de dados. codigo: Public Class form_inserir_imagens Dim openFD = New OpenFileDialog Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click ' Define a Connection String Dim myConnectionString As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\bd_find_the_differences.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True" Try ' Cria um novo FileStream para leitura da imagem Dim fs As New IO.FileStream("c:\image.jpg", IO.FileMode.Open, IO.FileAccess.Read) ' Cria um array de Bytes do tamanho do FileStream Dim ImageData(fs.Length() - 1) As Byte ' Lê os bytes do FileStream para o array criado fs.Read(ImageData, 0, ImageData.Length) ' Fecha o FileStream ficando a imagem guardada no array fs.Close() Using connection As New SqlClient.SqlConnection(myConnectionString) ' Define o commando Transact-SQL para inserir dados Dim SQL As String = "INSERT INTO tabela_imagens ([cod_imagem],[imagem_verdadeira],[imagem_falsa],[sair]) VALUES (@cod,@img1,@img2,@sair);" Dim command As New SqlClient.SqlCommand(Sql, connection) ' Define os parametros para a inserção de dados, onde está o array ' de bytes(imagem) a ser inserida. O tipo do campo é Image command.Parameters.Add("@cod", SqlDbType.Int).Value = CInt(ProxCod.Text) command.Parameters.Add("@img1", SqlDbType.Image).Value = ImageData command.Parameters.Add("@img2", SqlDbType.Image).Value = ImageData command.Parameters.Add("@sair", SqlDbType.Bit).Value = 0 connection.Open() ' Insere os campos no SQL command.ExecuteNonQuery() End Using Catch ex As Exception MessageBox.Show(ex.Message, My.Application.Info.Title, MessageBoxButtons.OK, MessageBoxIcon.Error) End Try End Sub Private Sub form_inserir_imagens_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim strFileName As String openFD.InitialDirectory = "C:\" openFD.Title = "Add A Display Picture" openFD.Filter = "JPEGS|*.jpg|GIFS|*.gif|Bitmaps|*.bmp" Dim DidWork As Integer = openFD.ShowDialog() If DidWork = DialogResult.OK Then strFileName = openFD.FileName PB1.Image = Image.FromFile(strFileName) openFD.Reset() End If End Sub Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Dim strFileName As String openFD.InitialDirectory = "C:\" openFD.Title = "Add A Display Picture" openFD.Filter = "JPEGS|*.jpg|GIFS|*.gif|Bitmaps|*.bmp" Dim DidWork As Integer = openFD.ShowDialog() If DidWork = DialogResult.OK Then strFileName = openFD.FileName PB2.Image = Image.FromFile(strFileName) openFD.Reset() End If End Sub End Class alguem podiame ajudar?
vasco16 Posted May 13, 2009 at 05:33 PM Report #263913 Posted May 13, 2009 at 05:33 PM vê se ajuda: http://www.portugal-a-programar.pt/index.php?showtopic=25377
jpaulino Posted May 13, 2009 at 06:09 PM Report #263915 Posted May 13, 2009 at 06:09 PM E qual é o erro que dá ?
j.mendes24 Posted May 14, 2009 at 10:13 AM Author Report #264073 Posted May 14, 2009 at 10:13 AM nao da erro, ele passa por todas as linhas de codigo sem nenhum erro, mas depois quando vou verificar na base de dados, ela está totalmente fazia. :S
Soulsick Posted May 14, 2009 at 02:28 PM Report #264143 Posted May 14, 2009 at 02:28 PM Hum, não sei com sql server isto também acontece, mas não estarás a criar uma bd nova cada vez que compilas/corres o teu programa? Adicionaste a bd ao projecto? Se adicionaste, vê como tens a propriedade Copy to Output.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now