none
2 tabelas ao invés de 1 ? qual mais rapido RRS feed

  • Pergunta

  • Vou criar um programa interno para fechamento de caixa.

    Inicialmente pensei

    Tbl_Entrada
    int_ID
    int_IDFornecedor
    str_Texto
    cur_valor
    sdt_Data
    int_Tipo

    Tbl_Saida
    int_ID
    int_IDFornecedor
    str_Texto
    cur_valor
    sdt_Data
    int_Tipo

    ou será melhor:
    Tbl_movimentacao
    int_ID
    int_IDFornecedor
    str_Texto
    cur_valor
    sdt_Data
    int_Tipo
    bool_Entrada (true/false para saber se é entrada ou saida)

    Qual seria a melhor idéia? menor custo para os índices, espaço, velocidades? pq um indice bool_entrada, mesmo que seja clustered terá que ler esse indice, em outra tabela já sabe que é entrada, porém terá inner join..
    Bom..acho que deu pra entender a dúvida...aceito idéias.

    quinta-feira, 7 de fevereiro de 2013 18:05

Respostas

  • Olá Leonardo...

    No seu caso, as boas práticas propõem, a criação de uma só tabela (tbl_movimentacao).

    No quesito performance, o uso correto de índices, ajudam a diminuir o tempo de resposta do Banco pra suas consultas.

    Ai você se pergunta: Quais índices criar ?

    Resposta: Utilize as ferramentas de desempenho que o SQL Server lhe fornece (SQL Server Profiler e o Orientador de Otimização do Mecanismo de Banco de Dados). Com isso, de acordo com a forma que você consultar essa tabela, você tem uma forma de optimizar seus índices e estatísticas.

    Espero ter lhe ajudado...


    Não esqueça de marcar o post como útil caso tenha te ajudado.

    • Marcado como Resposta ASPX_BR quarta-feira, 13 de fevereiro de 2013 01:19
    terça-feira, 12 de fevereiro de 2013 23:33

Todas as Respostas

  • No meu ponto de vista as 2 tabelas teriam a mesma informação tipo de informação que seria desnecessario, uma tabela seria muito melhor ja que teria as mesmas informações e voce saberia se é entrada ou saida por um campo, em termos de performance não deve mudar muita coisa a não ser que voce fosse fazer join entre as 2 tabelas, dai uma tabela só tambem com certeza seria mais rapido.

    Alexandre Matayosi Conde Mauricio. Se esta sugestão for útil, por favor, classifique-a como útil. Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.

    quinta-feira, 7 de fevereiro de 2013 19:31
  • Olá Leonardo...

    No seu caso, as boas práticas propõem, a criação de uma só tabela (tbl_movimentacao).

    No quesito performance, o uso correto de índices, ajudam a diminuir o tempo de resposta do Banco pra suas consultas.

    Ai você se pergunta: Quais índices criar ?

    Resposta: Utilize as ferramentas de desempenho que o SQL Server lhe fornece (SQL Server Profiler e o Orientador de Otimização do Mecanismo de Banco de Dados). Com isso, de acordo com a forma que você consultar essa tabela, você tem uma forma de optimizar seus índices e estatísticas.

    Espero ter lhe ajudado...


    Não esqueça de marcar o post como útil caso tenha te ajudado.

    • Marcado como Resposta ASPX_BR quarta-feira, 13 de fevereiro de 2013 01:19
    terça-feira, 12 de fevereiro de 2013 23:33