• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

martim07

Inserir dados!!

8 mensagens neste tópico

Quero inserir uns dados na minha tabela.. Tenho um botao que quando carrego, supostamente a informação k tenho nas caixas de texto não vai para a informação à tabela, e o mais curioso é que não dá erro nenhum!!!

O código é o seguinte..

SqlConnection cn;
cn = new SqlConnection(ConfigurationManager.ConnectionStrings["clinicasConnectionString"].ToString());
         cn.Open();

        SqlCommand Meucomando = new SqlCommand("Insert Into Pacientes (NumBeneficiario,Nome,Sexo,Morada,CodigoPostal,Localidade,Tlm,Tlf,BI,CodMedico) Values(@NumBeneficiario,@Sexo,@Nome,@Morada,@localidade,@CodigoPostal,@Tlm,@Tlf,@BI,@CodMedico)", cn);
        
        Meucomando.Parameters.AddWithValue("@NumBeneficiario",Convert.ToInt32(TxtNB.Text));
        Meucomando.Parameters.AddWithValue("@Sexo", TxtSexo.Text);
        Meucomando.Parameters.AddWithValue("@Nome", TxtNome.Text);
        Meucomando.Parameters.AddWithValue("@Morada", TxtMorada.Text);
        Meucomando.Parameters.AddWithValue("@CodigoPostal", TxtCP.Text);
        Meucomando.Parameters.AddWithValue("@Localidade", TxtLocalidade.Text);
        Meucomando.Parameters.AddWithValue("@Tlf", TxtTlf.Text);  //
        Meucomando.Parameters.AddWithValue("@Tlm", TxtTlm.Text);
        Meucomando.Parameters.AddWithValue("@BI", TxtBI.Text);
        Meucomando.Parameters.AddWithValue("@CodMedico", Convert.ToInt32(TxtMedico.Text));

Meucomando.ExecuteNonQuery();
        
        cn.Close(); 

Se não for desta maneira que se insere, ficava grato que dissessem a maneira correcta!!

cumprimentos..

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Poe um breakpoint aí nesse código e verifica o estado das caixas de texto a ver se não estão vazios.

Podes também alterar o código para

if(Meucomando.ExecuteNonQuery() > 0)
{
// gravou
}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas,

Tenta assim:

Meucomando.Parameters.Add(New SQLParameter("@nome", txtNome.text));

E abre a connecção só depois de atribuires os campos

cn.Open();
Meucomando.ExecuteNonQuery();
cn.Close();

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Bom ve se assim Funciona

atenção é vb.net não c++.

   Dim cn As SqlConnection
        cn = New SqlConnection("String")
        
        Dim Meucomando As SqlCommand = New SqlCommand("Insert Into Pacientes (NumBeneficiario,Nome,Sexo,Morada,CodigoPostal,Localidade,Tlm,Tlf,BI,CodMedico) Values(@NumBeneficiario,@Sexo,@Nome,@Morada,@localidade,@CodigoPostal,@Tlm,@Tlf,@BI,@CodMedico)", cn)
        With Meucomando
            .Parameters.AddWithValue("@NumBeneficiario", Convert.ToInt32(TxtNB.Text))
            .Parameters.AddWithValue("@Sexo", TxtSexo.Text)
            .Parameters.AddWithValue("@Nome", TxtNome.Text)
            .Parameters.AddWithValue("@Morada", TxtMorada.Text)
            .Parameters.AddWithValue("@CodigoPostal", TxtCP.Text)
            .Parameters.AddWithValue("@Localidade", TxtLocalidade.Text)
            .Parameters.AddWithValue("@Tlf", TxtTlf.Text)
            .Parameters.AddWithValue("@Tlm", TxtTlm.Text)
            .Parameters.AddWithValue("@BI", TxtBI.Text)
            .Parameters.AddWithValue("@CodMedico", Convert.ToInt32(TxtMedico.Text))
        End With
        Try
            cn.Open()
            Meucomando.ExecuteNonQuery()
            cn.Close()
        Catch ex As Exception
            label1.text = ex.Message
        End Try

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Querias tu dizer, C# em vez de c++ . Mas pelos vistos o interessado não deu mais noticias :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora