none
Ultimo Registro RRS feed

  • Pergunta

  •  

    Galera estou fazendo uma transação e tenho duas tabelas.

    Eu preciso pegar o registro que estou inserindo na primeira tabela para usar o id e gravar na segunda tabela.

    Como eu posso fazer isso?

     

    Obrigado

    sexta-feira, 10 de outubro de 2008 13:16

Respostas

  • Você pode fazer assim:

     

    Code Snippet

    SqlConnection conexao = new SqlConnection("sua conexão");

    SqlCommand cmdInsere = new SqlCommand("seu comando insert", conexao);
    SqlCommand cmdSeq = new SqlCommand("select @@identity", conexao);
    int sequencia = 0;

    try
    {
       conexao.Open();

       cmdInsere.ExecuteNonQuery();
       sequencia = int.Parse(cmdSeq.ExecuteScalar().ToString());
    }
    catch
    {
       // tratamento do erro
    }
    finally
    {
       conexao.Close();
    }

     

     

    PS: Você executa o comando @@identity após a inserção.

     

    []s,

    sexta-feira, 10 de outubro de 2008 13:48

Todas as Respostas

  • olá,

     

    Você consegue pegar o identity com:

     

    Code Snippet

    select @@identity

     

     

    []s,

     

    sexta-feira, 10 de outubro de 2008 13:27
  •  

    Como funciona esse instrução é só isso?

     

    Att,

    sexta-feira, 10 de outubro de 2008 13:29
  • Você pode fazer assim:

     

    Code Snippet

    SqlConnection conexao = new SqlConnection("sua conexão");

    SqlCommand cmdInsere = new SqlCommand("seu comando insert", conexao);
    SqlCommand cmdSeq = new SqlCommand("select @@identity", conexao);
    int sequencia = 0;

    try
    {
       conexao.Open();

       cmdInsere.ExecuteNonQuery();
       sequencia = int.Parse(cmdSeq.ExecuteScalar().ToString());
    }
    catch
    {
       // tratamento do erro
    }
    finally
    {
       conexao.Close();
    }

     

     

    PS: Você executa o comando @@identity após a inserção.

     

    []s,

    sexta-feira, 10 de outubro de 2008 13:48