Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Kinhas

[Resolvido] Não quer incluir!

Recommended Posts

Boa tarde pessoal,

 

Estou estudando um pouco sobre banco de dados e c# (que eu uso atualmente),

 

Eu baixei o banco de dados MySQL, instalei tudo bonitnho e tals,

 

Ai criei uma tabela Com 4 campos (Codigo, nome, endereco, estado),

 

o campo código é auto incrementável.

 

Ai coloquei a seguinte query pra rodar (já conectei com o banco),

 

MySqlCommand commS = new MySqlCommand("INSERT INTO cliente VALUES('1', '" + txtb_nome.Text + "', '"+txtb_endereco.Text+"', '"+txtb_estado.Text+"';)", bdConn);

 

Tentei assim também

 

MySqlCommand commS = new MySqlCommand("INSERT INTO cliente VALUES(1, '" + txtb_nome.Text + "', '"+txtb_endereco.Text+"', '"+txtb_estado.Text+"';)", bdConn);

 

E tentei assim também

 

MySqlCommand commS = new MySqlCommand("INSERT INTO cliente VALUES('" + txtb_nome.Text + "', '"+txtb_endereco.Text+"', '"+txtb_estado.Text+"';)", bdConn);

 

Porém nenhum desses modos adcionou na tabela, tentei também sem colocar o ";", mas também não adiantou.

 

somente adicionou uma linha na tabela quando eu escrevi o insert into no tela DOS do banco dea dos que é a que eu uso.

 

Alguém saberia me ajudar?

 

Obrigado,

 

Lucas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

não esta retornando erro ?

 

tenta nomear os campos que esta inserindo, é recomendado como boa prática, além de ficar mais organizado

 

MySqlCommand commS = new MySqlCommand(@"INSERT INTO cliente (nome, endereco, estado) 
VALUES('" + txtb_nome.Text + "', '"+txtb_endereco.Text+"', '"+txtb_estado.Text+"';)", bdConn);

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então eriva,

 

Não retorna erro nenhum,

 

Coloquei até um COnsole.WriteLine depois de inserido pra ver se chegava até lá e chegou,

 

não volta erro nenhum mas não grava o dado no banco.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom então eriva,

 

Esse é o código que eu estou usando no momento.

 

using System.Data;
using MySql.Data.MySqlClient;

 

Ai depois do InitializeComponent(); eu coloquei assim

 

private MySqlConnection bdConn; //MySQL
       private MySqlDataAdapter bdAdapter;
       private DataSet bdDataSet; //MySQL

 

E no evento do botão isso aqui

 

 //Definição do dataset
               bdDataSet = new DataSet(); 
               //Define string de conexão
               bdConn = new MySqlConnection("Persist Security Info=False;server=localhost;database=lucas;uid=root;server=localhost;database=lucas;uid=root;pwd=*******");
               //Abre conecção 
               try
               {
                   bdConn.Open();
                   Console.WriteLine("Connection oppened");
               }
               catch
               {
                   MessageBox.Show("Impossível estabelecer conexão");
               }
               //Verifica se a conexão está aberta
               if (bdConn.State == ConnectionState.Open)
               {	
                   //Se estiver aberta insere os dados na BD
                   MySqlCommand commS = new MySqlCommand(@"INSERT INTO cliente (nome, endereco, estado)  
VALUES('" + txtb_nome.Text + "', '" + txtb_endereco.Text + "', '" + txtb_estado.Text + "';)", bdConn);
                   Console.WriteLine("Inserido");
               }

 

Isso ai que eu tenho.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então,

 

eu consigo resovler o problema,

 

mas tive que usar outro código,

 

Ainda não identifiquei o que está errado mas tudo bem.

 

Valeus a ajuda eriva =)

Compartilhar este post


Link para o post
Compartilhar em outros sites

A forma que deu certo é essa daqui no momento:

 

namespace Teste_mySQL_Cliente
{
   public partial class Form1 : Form
   {
       public Form1()
       {
           InitializeComponent();
       }

       private MySqlConnection mConn;
       private MySqlDataAdapter mAdapter;
       private DataSet mDataSet;

       private void mostraResultados()
       {
           mDataSet = new DataSet();
           mConn = new MySqlConnection("Persist Security Info=False; server=localhost;database=lucas;uid=root;password=Password1");
           mConn.Open();

           //cria um adapter utilizando a instrução SQL para aceder à tabela
           mAdapter = new MySqlDataAdapter("SELECT * FROM cliente ORDER BY codigo", mConn);

           //preenche o dataset através do adapter
           mAdapter.Fill(mDataSet, "cliente");

           //atribui o resultado à propriedade DataSource da dataGridView
           gvClientes.DataSource = mDataSet;
           gvClientes.DataMember = "cliente";
       }

       private void btn_visualizar_Click(object sender, EventArgs e)
       {
           mostraResultados();
       }

       private void btn_incluir_Click(object sender, EventArgs e)
       {
           if (txtb_nome.Text == "" && txtb_endereco.Text == "" && txtb_estado.Text == "")
           {
               MessageBox.Show("O Campo 'nome' não pode ser nulo\nO Campo 'endereço' não pode ser nulo\nO Campo 'estado' não pode ser nulo");
           }
           else if (txtb_nome.Text == "" && txtb_endereco.Text == "")
           {
               MessageBox.Show("O Campo 'nome' não pode ser nulo\nO Campo 'endereço' não pode ser nulo");
           }
           else if (txtb_nome.Text == "" && txtb_estado.Text == "")
           {
               MessageBox.Show("O Campo 'nome' não pode ser nulo\nO Campo 'estado' não pode ser nulo");
           }
           else if (txtb_nome.Text == "")
           {
               MessageBox.Show("O Campo 'nome' não pode ser nulo");
           }
           else if (txtb_endereco.Text == "" && txtb_estado.Text == "")
           {
               MessageBox.Show("O Campo 'endereço' não pode ser nulo\nO Campo 'estado' não pode ser nulo");
           }
           else if (txtb_endereco.Text == "")
           {
               MessageBox.Show("O Campo 'endereço' não pode ser nulo");
           }
           else if (txtb_estado.Text == "")
           {
               MessageBox.Show("O Campo 'estado' não pode ser nulo");
           }
           else
           {
               try
               {

                   mConn = new MySqlConnection("Persist Security Info=False; server=localhost;database=lucas;uid=root;password=Password1");
                   mConn.Open();

                   MySqlCommand command = new MySqlCommand("INSERT INTO cliente (nome,endereco,estado)" +
           "VALUES('" + txtb_nome.Text + "','" + txtb_endereco.Text + "','" + txtb_estado.Text + "')", mConn);

                   //Executa a Query SQL
                   command.ExecuteNonQuery();

                   // Fecha a conexão
                   mConn.Close();

                   //Mensagem de Sucesso
                   MessageBox.Show("Gravado com Sucesso!", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information);

                   // Método criado para que quando o registo é gravado, automaticamente a dataGridView efectue um "Refresh"
                   //mostraResultados();
               }
               catch (Exception er)
               {
                   MessageBox.Show(er.ToString());
               }
           }
       }
   }
}

 

Obrigado pela ajuda gente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.