none
Consulta mista com SQL Server e Excel RRS feed

  • Pergunta

  • Bem, estou trabalhando num projeto de Base de Dados, nesse projeto tenho uma tabela CHAMADOS, nessa tabela eu tenho um campo chamado "RAT" que deveria apontar (FK) para uma outra tabela que se chamaria RAT, porém, o conteúdo que deveria ser armazenado em uma tabela "RAT" é meio dinâmico, ou seja, os campos mudam constantemente dependendo do cliente da empresa. Sendo assim, fica inviável criar uma tabela "RAT" e "amarrar" os campos, tornando impossível acrescentar novos dados caso se faça necessário. E chamar o DEV toda vez que precisar criar, alterar, ou excluir campos é pura bucha. Também seria impossível fazer modificações na tabela RAT sem comprometer os registros.

    A solução que pensei foi trocar uma possível tabela RAT por uma planilha de Excel, onde o próprio usuário, seguindo um padrão, possa acrescentar, excluir ou editar campos.

    Como uma tabela chamada "RAT" seria um complemento da tabela CHAMADOS, ou seja, conteria itens referentes a cada registro de CHAMADOS, o desafio seria na hora de executar as consultas.

    Como executar uma consulta na tabela CHAMADOS e trazer tb os itens da planilha excel referente ao registro consultado em CHAMADOS.

    Acredito que isso seria facilmente implementado dentro da aplicação mas, sabemos que arquivos msoffice tem alguns problemas quando compartilhados em rede. Então queria deixar a cargo do servidor administrar as requisições de consulta.

    quarta-feira, 31 de julho de 2013 12:40

Respostas

Todas as Respostas

  • Então, não sei se deixei claro minha dúvida, queria mesmo saber se o SQL Server tem esse recurso, ou se seria preciso criar uma aplicação separada para isso.
    quarta-feira, 31 de julho de 2013 20:26
  • Deleted
    quarta-feira, 31 de julho de 2013 20:59
  • Então, vou postar uma screen do DER. E um relacionamento comum só que em vez de ser entre duas tabelas o relacionamento é entre uma tabela SQL Server e uma planilha do Excel.

    Quando uma consulta é feita na tabela CHAMADOS o SQL Server deve ir na planilha excel, pegar os dados referentes aquele chamado retornar tudo como se estivesse tudo em tabelas SQL Server normal.

    DER

    quinta-feira, 1 de agosto de 2013 12:04
  • Porque vc não cria um job para importar os dados desta planilha para uma tabela SQL SERVER?


    Todos tem direito ao sucesso, basta ser determinado no que tanto deseja nesta vida!

    quinta-feira, 1 de agosto de 2013 13:48
  • Pq os campos são meio dinâmicos, podem muda a qualquer momento, exemplo. Hoje o usuário precisa apenas de Latitude, Longitude, Elevação. Amanhã ele pega um novo contrato e os dados necessários mudam, passando a ser necessário, latitude, longitude, elevação, ID, potência, isolação,.... E não tem como prever o que será necessário pois é o cliente do usuário quem determina.

    Então, deixando num arquivo Excel o usuário pode adicionar ou alterar campos de acordo com a sua necessidade.

    Se eu eliminar o arquivo Excel e deixar uma tabela com os campos já definidos toda vez que ele pegar um contrato novo terá que acionar o suporte para mexer no banco.


    Na verdade minha ideia é não ter uma tabela de RAT no SQL Server, o que eu quero é apenas que o SQL Server faça buscas e gravações na planilha do arquivo excel. Ou seja ele apenas administraria as consultas e gravações nessa planilha.
    quinta-feira, 1 de agosto de 2013 14:16
  • Acho que encontrei uma possível solução

    Possivel Solução

    Darei uma lida com mais calma para ver se é realmente isso.

    • Marcado como Resposta Matheus S. Silva quinta-feira, 1 de agosto de 2013 19:06
    quinta-feira, 1 de agosto de 2013 18:33
  • É isso mesmo... segue o link da solução no site msdn

    solução MSDN

    Bem.... agora é só testar...

    • Marcado como Resposta Matheus S. Silva quinta-feira, 1 de agosto de 2013 19:07
    quinta-feira, 1 de agosto de 2013 19:03