AJUDA A SALVAR IMAGEM NO BD MYSQL C#

 Tópico anterior Próximo tópico Novo tópico

AJUDA A SALVAR IMAGEM NO BD MYSQL C#

C#

 Compartilhe  Compartilhe  Compartilhe
#485848 - 09/12/2018 18:50:35

FABRICIOWEB
BELO HORIZONTE
Cadast. em:Novembro/2011


Última edição em 09/12/2018 20:30:31 por FABRICIOWEB

Fala pessoal como estou migrado do vb6 para o c#
Nao  to conseguindo salvar uma imagem dentro do bd assim que estou salvando os dados

                Application.DoEvents();

            System.IO.MemoryStream MS = new System.IO.MemoryStream();
            pbx_EmpPhoto.Image.Save(MS, System.Drawing.Imaging.ImageFormat.Jpeg);
            byte[] file = new byte[MS.Length];
            file = MS.ToArray();
            pbx_EmpPhoto.Image = null;




            MySqlConnection Conecta = Conexaolocal.ObtenerConexion();
            MySqlCommand Consulta = new MySqlCommand();
            Consulta.Connection = Conecta;
            Consulta.Parameters.Add(new MySqlParameter(fotoimagem, MySqlDbType.LongBlob, file.Length)).Value = file;

            Consulta.CommandText = "INSERT INTO empresa (codigo, nome, raza, cnpj, rua, cidade, uf, numero, bairro, cep, cel, fixo, fax, email, insc, logo, comple, regime, inscrmuni) VALUES ('" +
            "01" + "', '" +
            txt_FirstName.Text + "', '" +
            txt_MiddleName.Text + "', '" +
            maskedTextBox5.Text + "', '" +
            textBox4.Text + "', '" +
            textBox7.Text + "', '" +
            comboBox1.Text + "', '" +
            textBox6.Text + "', '" +
            textBox5.Text + "', '" +
            txt_MNCD.Text + "', '" +
            maskedTextBox3.Text + "', '" +
            maskedTextBox2.Text + "', '" +
            maskedTextBox4.Text + "', '" +
            textBox9.Text + "', '" +
            textBox2.Text + "', '" +
            fotoimagem + "', '" +
            textBox8.Text + "', '" +
            cmb_Nationality.Text + "', '" +
            textBox3.Text + "')";
            Consulta.ExecuteNonQuery();
            Conecta.Close();
            MessageBox.Show("Empresa Cadastrada com sucesso!");
            LimparTxt(this);


        }




#485857 - 10/12/2018 07:49:03

FABRICIOWEB
BELO HORIZONTE
Cadast. em:Novembro/2011


 Anexos estao visíveis somente para usuários registrados

agora esta dando este erro galera





Resposta escolhida #485861 - 10/12/2018 10:46:08

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Se você está usando parâmetros, use para todos os parâmetros.

Você precisa usar o método "AddWithValue", não sei se o client do MySQL tem isso.

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#485862 - 10/12/2018 10:49:01

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Eu acho que você está indo pelo caminho errado. Você está indo tela por tela, fazendo exatamente como fazia no VB6. É uma das piores estratégias possíveis. Sugiro entender bem OOP e utilizar mais abstrações, como por exemplo Entity Framework. Sair simplesmente metendo a "mão na massa" não é uma boa idéia. Invista um tempo e entenda bem esse novo paradigma de programação, te garanto que vai valer à pena.

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#485869 - 10/12/2018 11:27:17

LAMPIAO
SAO CAETANO DO SUL
Cadast. em:Setembro/2004


Citação:
:
Eu acho que você está indo pelo caminho errado. Você está indo tela por tela, fazendo exatamente como fazia no VB6. É uma das piores estratégias possíveis. Sugiro entender bem OOP e utilizar mais abstrações, como por exemplo Entity Framework. Sair simplesmente metendo a "mão na massa" não é uma boa idéia. Invista um tempo e entenda bem esse novo paradigma de programação, te garanto que vai valer à pena.



Ia dizer a mesma coisa, do jeito que você esta fazendo não esta aproveitando em nada todos os recursos que a plataforma .Net tem a oferecer, dedique um tempo para estudar OOP, ou vc vai sofrer muito com essas técnicas ultrapassadas, Estude também padrões de programação, em termos de padrão seu código esta muito longe, aprenda como declarar variáveis e como simplificar essas declarações, procure seguir um padrão. Com o C# é possível criar um código bonito, limpo, curto e funcional.



#485882 - 10/12/2018 15:17:50

FABRICIOWEB
BELO HORIZONTE
Cadast. em:Novembro/2011


Citação:
:
Eu acho que você está indo pelo caminho errado. Você está indo tela por tela, fazendo exatamente como fazia no VB6. É uma das piores estratégias possíveis. Sugiro entender bem OOP e utilizar mais abstrações, como por exemplo Entity Framework. Sair simplesmente metendo a "mão na massa" não é uma boa idéia. Invista um tempo e entenda bem esse novo paradigma de programação, te garanto que vai valer à pena.


Sim meu brother mas to indo com a mão na massa não isso é tipo prototico kkkkkkkkkk  estou lendo bastante e vendo videos sobre o assunto

para essa finalidade que eu queria fiz assim e então deu certo
adicionei os parametros


                Consulta.Parameters.Add(new MySqlParameter("@nome", txt_FirstName.Text));
                Consulta.Parameters.Add(new MySqlParameter("@raza", txt_MiddleName.Text));
                Consulta.Parameters.Add(new MySqlParameter("@cnpj", maskedTextBox5.Text));
                Consulta.Parameters.Add(new MySqlParameter("@rua", textBox4.Text));
                Consulta.Parameters.Add(new MySqlParameter("@cidade", textBox7.Text));
                Consulta.Parameters.Add(new MySqlParameter("@uf", comboBox1.Text));
                Consulta.Parameters.Add(new MySqlParameter("@numero", textBox6.Text));
                Consulta.Parameters.Add(new MySqlParameter("@bairro", textBox5.Text));
                Consulta.Parameters.Add(new MySqlParameter("@cep", txt_MNCD.Text));
                Consulta.Parameters.Add(new MySqlParameter("@cel", maskedTextBox3.Text));
                Consulta.Parameters.Add(new MySqlParameter("@fixo", maskedTextBox2.Text));
                Consulta.Parameters.Add(new MySqlParameter("@fax", maskedTextBox4.Text));
                Consulta.Parameters.Add(new MySqlParameter("@email", textBox9.Text));
                Consulta.Parameters.Add(new MySqlParameter("@insc", textBox2.Text));
                Consulta.Parameters.Add(new MySqlParameter("@logo", image_byte));
                Consulta.Parameters.Add(new MySqlParameter("@comple", textBox8.Text));
                Consulta.Parameters.Add(new MySqlParameter("@regime", cmb_Nationality.Text));
                Consulta.Parameters.Add(new MySqlParameter("@inscrmuni", textBox3.Text));










#485884 - 10/12/2018 16:05:58

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Bacana! Agora, é hora de abstrair um pouco, fazer algo que seja adaptável à qualquer coisa. Usar Objetos.

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#485889 - 10/12/2018 16:45:04

FABRICIOWEB
BELO HORIZONTE
Cadast. em:Novembro/2011


 Anexos estao visíveis somente para usuários registrados

Citação:
:
Bacana! Agora, é hora de abstrair um pouco, fazer algo que seja adaptável à qualquer coisa. Usar Objetos.


Kerp agora para atualizar ta me voltando esse erro do mysql


assim que estou tentando atualizar os dados


Consulta.CommandText = "UPDATE  empresa SET (codigo= @codigo, nome= @nome, raza= @raza, cnpj= @cnpj, rua= @rua, cidade= @cidade, uf= @uf, numero= @numero, bairro= @bairro, cep= @cep, cel= @cel, fixo= @fixo, fax= @fax, email= @email, insc= @insc, logo= @logo, comple= @comple, regime= @regime, inscrmuni= @inscrmuni)";



                Consulta.Parameters.Add(new MySqlParameter("@codigo", "1"));
                Consulta.Parameters.Add(new MySqlParameter("@nome", txt_nomejuridico.Text));
                Consulta.Parameters.Add(new MySqlParameter("@raza", txt_nomefantasia.Text));
                Consulta.Parameters.Add(new MySqlParameter("@cnpj", maskedTextBox5.Text));
                Consulta.Parameters.Add(new MySqlParameter("@rua", textBox4.Text));
                Consulta.Parameters.Add(new MySqlParameter("@cidade", textBox7.Text));
                Consulta.Parameters.Add(new MySqlParameter("@uf", comboBox1.Text));
                Consulta.Parameters.Add(new MySqlParameter("@numero", textBox6.Text));
                Consulta.Parameters.Add(new MySqlParameter("@bairro", textBox5.Text));
                Consulta.Parameters.Add(new MySqlParameter("@cep", cep.Text));
                Consulta.Parameters.Add(new MySqlParameter("@cel", maskedTextBox3.Text));
                Consulta.Parameters.Add(new MySqlParameter("@fixo", maskedTextBox2.Text));
                Consulta.Parameters.Add(new MySqlParameter("@fax", maskedTextBox4.Text));
                Consulta.Parameters.Add(new MySqlParameter("@email", textBox9.Text));
                Consulta.Parameters.Add(new MySqlParameter("@insc", textBox2.Text));
                Consulta.Parameters.Add(new MySqlParameter("@logo", image_byte));
                Consulta.Parameters.Add(new MySqlParameter("@comple", textBox8.Text));
                Consulta.Parameters.Add(new MySqlParameter("@regime", regime.Text));
                Consulta.Parameters.Add(new MySqlParameter("@inscrmuni", textBox3.Text));
                Consulta.ExecuteNonQuery();
                Conecta.Close();
                MessageBox.Show("Empresa Atualizados com sucesso!");
                LimparTxt(this);
                desabilitaTxt(this);
            }
            catch (Exception E)
            {
                MessageBox.Show(E.Message.ToString());
                // MessageBox.Show("Dados não Atualizados");
            }




#485891 - 10/12/2018 18:25:16

FABRICIOWEB
BELO HORIZONTE
Cadast. em:Novembro/2011


resolvido a linha estava errada

assim funcionou
Consulta.CommandText = "" + "UPDATE empresa SET CODIGO=@codigo, NOME=@nome, RAZA=@raza, CNPJ=@cnpj, RUA=@rua, CIDADE=@cidade, UF=@uf, NUMERO=@numero, BAIRRO=@bairro, CEP=@cep, CEL=@cel, FIXO=@fixo, FAX=@fax, EMAIL=@email, INSC=@insc, LOGO=@logo, comple=@comple, regime=@regime, inscrmuni=@inscrmuni  WHERE CODIGO=@codigo";



 Tópico anterior Próximo tópico Novo tópico


Tópico encerrado, respostas não sao permitidas
Encerrado por FABRICIOWEB em 10/12/2018 18:25:36