Pergunta

O site que estou trabalhando está executando o Windows Server 2003 e SQL Server 8 (2000?), E ASP.NET 3.5.

Eu preciso ter algum tipo de script ou de execução do aplicativo para importar dados de um arquivo de texto FTP'd, no banco de dados. Já existe um site em execução na máquina, que usa o banco de dados atual. Posso usar uma tarefa agendada para pontapé de forma confiável fora algum tipo de página .aspx que irá importar os dados? Ou há uma abordagem melhor?

E sobre certificando-se de que ninguém mais pode acessar a página que executa a importação? Eu não quero usuários aleatórios que executam a importação!

Agradecemos antecipadamente!

P.S. algum processamento precisa ocorrer nos dados antes de sua inserido. ou seja, pesquisas, condicionais, etc, para que as ferramentas de banco de dados não são suficientes robusta (eu acho). Eu odeio DTS, e eu SSIS não está disponível nesta versão, eu acho.

Foi útil?

Solução

DTS e procedimentos armazenados em um trabalho.

BCP e procedimentos armazenados em um emprego.

Você diz que você precisa fazer um monte de pesquisas e conversões? SQL é bom nisso - e bom em fazer isso rápido. Pode parecer um pouco intimidante no início, mas não é difícil.

Outras dicas

Se você quiser ter um C # App lidar com a sua importação Gostaria de sugerir um aplicativo do Windows (exe) w / o uma forma (melhor do que um console app porque ele não aparecer a qualquer interface do usuário sempre que ele é executado). Executá-lo de vez em quando (a cada minuto) por uma tarefa agendada.

Por que você usaria ASP.NET? Dependendo da complexidade do trabalho que você poderia ou carregá-lo diretamente para o banco de dados (BULK LOAD) ou DTS uso (SQL Server 2000) ou SSIS (SQL Server 2005/2008) se o processamento mais complexo é necessário.

executar um BULK INSERT ou bcp para importar os dados em vez disso, veja aqui http://msdn.microsoft.com/en-us/library/aa173839 (SQL.80) .aspx

Eu vou echo outras pessoas aqui - você não quer ter uma tarefa agendada bateu uma página web. SQL Server oferece algumas opções de importação bons dados, ou você pode apenas escrever um programa de janelas simples e executá-lo como uma tarefa agendada.

Outra opção seria escrever um serviço do windows que assiste seu diretório FTP e faz a importação.

Como já foi dito, provavelmente, um aplicativo separado console (desencadeada por uma tarefa agendada) ou um serviço do Windows seria a melhor opção para esse cenário.

Por outro lado, se você já tem toda a funcionalidade necessária disponível no aplicativo web em execução no servidor, então você provavelmente poderia configurar uma tarefa agendada, que inicia um script (VBScript, JScript), que em chamadas Ligue uma página da web app.

Para ter algum tipo de segurança (por exemplo, impedindo que qualquer usuário pode chamar essa página), você pode adicionar algum código para a página, que verifica se a página foi chamado com http: // localhost . Isso, pelo menos, impedir que a página que está sendo chamado de um cliente remoto.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top