Como criar um formulário de .NET e sql com foto.
Ai galera tudo bem?
Alguém poderia me ajudar, pois sou novo em c# e sql.
Bom queria criar um formulário de c# com os seguintes campos(Nome, CPF, DataNascimento, Foto) e no sql. No c# iria fazer a função de inserir, alterar e excluir. Mas a dificuldade e de inserir e pesquisar a foto no sql.
Fico no aguardo!
Obrigado.
Alguém poderia me ajudar, pois sou novo em c# e sql.
Bom queria criar um formulário de c# com os seguintes campos(Nome, CPF, DataNascimento, Foto) e no sql. No c# iria fazer a função de inserir, alterar e excluir. Mas a dificuldade e de inserir e pesquisar a foto no sql.
Fico no aguardo!
Obrigado.
Breno Ferreira
Curtidas 0
Melhor post
Jair Souza
07/07/2014
Indico você não salvar a imagem no banco de dados e sim em alguma pasta da aplicação e no banco salvar apenas o caminho.
Concordo com o Fabiano, tenho este exemplo é em C# para windows form e o banco é Access, para teres a ideia de como fazer acho que serve.
Criei uma pasta chamada "fotos" que fica no mesmo local do aplicativo, abaixo o código, espero que possa lhe ajudar.
Adicionar a Foto :
private void BtnAdFoto_Click(object sender, EventArgs e) { try { if (Convert.ToInt32(iDLocatarioTextBox.Text) > 0) { openFileDialog1.ShowDialog(); Bitmap bmp = new Bitmap(openFileDialog1.FileName); Bitmap bmp3 = new Bitmap(bmp, pictureBox2.Size); pictureBox2.Image = bmp3; pictureBox2.Image.Save(Application.StartupPath.ToString() + "\\FotosLocatarios\\" + iDLocatarioTextBox.Text + ".png", System.Drawing.Imaging.ImageFormat.Png); fotoTextBox.Text = Application.StartupPath.ToString() + "\\FotosLocatarios\\" + iDLocatarioTextBox.Text + ".png"; this.Validate(); this.locatarioBindingSource.EndEdit(); this.tableAdapterManager.UpdateAll(this.bDBibliotecaDataSet); MessageBox.Show("Foto Salva com Sucesso !", "Salvar", MessageBoxButtons.OK, MessageBoxIcon.Information); } } catch (Exception) { MessageBox.Show("Cancelada Inclusão de Foto !", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
Excluir a Foto :
private void BtnExFoto_Click(object sender, EventArgs e { if (MessageBox.Show("Excluir Foto ?", "Excluir", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { pictureBox2.ImageLocation = Application.StartupPath.ToString() + "\\FotosLocatarios\\" + "SemFoto.png"; if (fotoTextBox.Text != "") { if (System.IO.File.Exists(fotoTextBox.Text)) { System.IO.File.Delete(fotoTextBox.Text); } fotoTextBox.Text = ""; } this.Validate(); this.locatarioBindingSource.EndEdit(); this.tableAdapterManager.UpdateAll(this.bDBibliotecaDataSet); MessageBox.Show("Foto Excluída com Sucesso !", "Excluir", MessageBoxButtons.OK, MessageBoxIcon.Information); if (fotoTextBox.Text != "") { pictureBox2.ImageLocation = fotoTextBox.Text; } else { pictureBox2.ImageLocation = Application.StartupPath.ToString() + "\\FotosLocatarios\\" + "SemFoto.png"; //Criei uma imagem com o texto "Sem Foto", para que o picturebox não fique vazio enquanto não é adicionada foto. } } else { MessageBox.Show("Exclusão Cancelada !", "Excluir", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
No form tem um textbox que mostra o endereço onde está a foto e um picturebox que mostra a foto :
[img]http://arquivo.devmedia.com.br/forum/imagem/343353-20140707-075358.png[/img]
[img]http://arquivo.devmedia.com.br/forum/imagem/343353-20140707-080317.png[/img]
GOSTEI 1
Mais Respostas
Mariana Carvalho
05/07/2014
a sua pergunta está relacionada ao tipo de dado de imagem?
GOSTEI 0
Breno Ferreira
05/07/2014
Preciso criar uma formulário de cadastro no c#, mais a duvida e como buscar a imagem no c# e salvar no sql. Quais tratamento são nescessario e como que faço a conversão da imagem para o sql.
[img]http://arquivo.devmedia.com.br/forum/imagem/375991-20140706-211952.png[/img]
[img]http://arquivo.devmedia.com.br/forum/imagem/375991-20140706-211952.png[/img]
GOSTEI 0
Fabiano Carvalho
05/07/2014
Indico você não salvar a imagem no banco de dados e sim em alguma pasta da aplicação e no banco salvar apenas o caminho.
GOSTEI 0
Lucas Rocha
05/07/2014
Concordo com todos, O melhor é inserir apenas o caminho da foto no banco e não a foto..
Trabalho dessa forma e é muito melhor.
abraços
Trabalho dessa forma e é muito melhor.
abraços
GOSTEI 0
Breno Ferreira
05/07/2014
Jair Souza fiz de acordo como você falou, mas poderia exemplificar mais ou passar um tutorial algo que possa tirar dúvida em relação a salvar o caminho da imagem no sql.
Deste já agradeço todos pelas as dicas.
Deste já agradeço todos pelas as dicas.
GOSTEI 0
Jair Souza
05/07/2014
Esta linha é o caminho/local onde fica a imagem :
fotoTextBox.Text = Application.StartupPath.ToString() + "\FotosLocatarios\" + iDLocatarioTextBox.Text + ".png";
fotoTextBox.Text – Como o nome já diz é o textbox.
Application.StartupPath.ToString() – É o local onde está o aplicativo.(Não sei se é igual em SQL)
+ "\FotosLocatarios\" + - É o nome da pasta onde ficam as fotos.
iDLocatarioTextBox.Text – É o código do registro do locatário, pois assim fica vinculado número do registro com a foto, a foto 1 será do registro 1 e assim por diante.
".png" – É a extensão em que foi salvo o arquivo.
Espero que lhe ajude, como eu disse no inicio este é em access, ainda não usei SQL.
[img]http://arquivo.devmedia.com.br/forum/imagem/343353-20140709-154944.png[/img]
fotoTextBox.Text = Application.StartupPath.ToString() + "\FotosLocatarios\" + iDLocatarioTextBox.Text + ".png";
fotoTextBox.Text – Como o nome já diz é o textbox.
Application.StartupPath.ToString() – É o local onde está o aplicativo.(Não sei se é igual em SQL)
+ "\FotosLocatarios\" + - É o nome da pasta onde ficam as fotos.
iDLocatarioTextBox.Text – É o código do registro do locatário, pois assim fica vinculado número do registro com a foto, a foto 1 será do registro 1 e assim por diante.
".png" – É a extensão em que foi salvo o arquivo.
Espero que lhe ajude, como eu disse no inicio este é em access, ainda não usei SQL.
[img]http://arquivo.devmedia.com.br/forum/imagem/343353-20140709-154944.png[/img]
GOSTEI 0
Mariana Carvalho
05/07/2014
Indico você não salvar a imagem no banco de dados e sim em alguma pasta da aplicação e no banco salvar apenas o caminho.
concordo que essa é a melhor forma.
GOSTEI 0