none
Delete Linhas da Tabela a,b,c,d RRS feed

  • Pergunta

  • Tenho uma tabela de Notas fiscais e, dependente delas as tabelas item, item1 e immposto.

    Necessito deletar da tabela Notas Fiscais as notas com situação = 'x' e simultaneamente deletar as outras tabelas cujo numero da nota fiscal sejam iguais à primeira tabela.

    Agradeço a ajuda

    segunda-feira, 23 de maio de 2016 19:21

Respostas

  • begin transaction
    delete dbo.ITEM		where nrnotafiscal in (select nrnotafiscal from dbo.NotaFiscal where situação = 'x');
    delete dbo.ITEM1	where nrnotafiscal in (select nrnotafiscal from dbo.NotaFiscal where situação = 'x');
    delete dbo.IMPOSTO	where nrnotafiscal in (select nrnotafiscal from dbo.NotaFiscal where situação = 'x');
    delete dbo.NotaFiscal where situação = 'x';
    
    commit;

    terça-feira, 24 de maio de 2016 15:06
  • Bom dia!

    Seria mais fácil se colocasse seu código, mais vamos lá:

    1° SQL - DELETAR DA PRIMEIRA TABELA, mais antes disso, vc precisa saber a coligação entre a primeira tabela e as demais, ou seja, se existe um código único da primeira tabela nas demais, que identificam o registro a ser deletado nas demais tabelas ok?

    SQL = "DELETE * FROM [NOTAS_FISCAIS] WHERE [SITUACAO]=@situacao"
    
    CMD = New OleDb.OleDbCommand(SQL, dbcom)
    
    CMD.Parameters.AddWithValue("@situacao", Textbox.BLABLABLA.TEXT)
    
    
    CMD.ExecuteNonQuery()
    

    Abraços.

    "SE TE AJUDOU, MARQUE COMO RESPOSTA"

    • Marcado como Resposta Newton Costa-BA terça-feira, 24 de maio de 2016 10:51
    terça-feira, 24 de maio de 2016 10:00
  • Deleted
    quarta-feira, 25 de maio de 2016 16:44
  • Deleted
    quarta-feira, 25 de maio de 2016 19:17
  • Deleted
    quarta-feira, 25 de maio de 2016 19:42

Todas as Respostas

  • Bom dia!

    Seria mais fácil se colocasse seu código, mais vamos lá:

    1° SQL - DELETAR DA PRIMEIRA TABELA, mais antes disso, vc precisa saber a coligação entre a primeira tabela e as demais, ou seja, se existe um código único da primeira tabela nas demais, que identificam o registro a ser deletado nas demais tabelas ok?

    SQL = "DELETE * FROM [NOTAS_FISCAIS] WHERE [SITUACAO]=@situacao"
    
    CMD = New OleDb.OleDbCommand(SQL, dbcom)
    
    CMD.Parameters.AddWithValue("@situacao", Textbox.BLABLABLA.TEXT)
    
    
    CMD.ExecuteNonQuery()
    

    Abraços.

    "SE TE AJUDOU, MARQUE COMO RESPOSTA"

    • Marcado como Resposta Newton Costa-BA terça-feira, 24 de maio de 2016 10:51
    terça-feira, 24 de maio de 2016 10:00
  • begin transaction
    delete dbo.ITEM		where nrnotafiscal in (select nrnotafiscal from dbo.NotaFiscal where situação = 'x');
    delete dbo.ITEM1	where nrnotafiscal in (select nrnotafiscal from dbo.NotaFiscal where situação = 'x');
    delete dbo.IMPOSTO	where nrnotafiscal in (select nrnotafiscal from dbo.NotaFiscal where situação = 'x');
    delete dbo.NotaFiscal where situação = 'x';
    
    commit;

    terça-feira, 24 de maio de 2016 15:06
  • Deleted
    quarta-feira, 25 de maio de 2016 16:44
  • Deleted
    quarta-feira, 25 de maio de 2016 19:17
  • Deleted
    quarta-feira, 25 de maio de 2016 19:42