Coleta de dados de um banco de dados Firebird para um banco de dados SQLServer express por linkserver sql
19/12/2015
0
Gostaria de uma ajuda com relação a uma coleta de dados.
Tenho um linkserver e preciso de tempo em tempo consulta-lo e salvar os dados acrescentados em uma tabela, isso sendo que seria o ideal que fosse feito como um procedimento que fique rodando "eternamente", em quanto o pc estiver ligado e se possivel iniciar junto com o sqlserver 2014 express.
tentei usar um comando insert into tabela select * from openquery(linkserver, 'select * from tabela') , em um procedimento mais o mesmo não funciona.
as duas tabelas são identicas embora a de inserir não tem campos not null.
desde já agradeço.
Ronan Teixeira
Posts
19/12/2015
Jothaz
2-Crie um Job para executar a procedure e
3-Configure o Job para rodar em intervalos de acordo com sua necessidade.
19/12/2015
Ronan Teixeira
Teria um modelo aí ?
19/12/2015
Jothaz
Sugeri o Job porque você não deixou claro que estava usando SQL Server Express Edition, que por não contar como SQL Agente e impossibilita a criação/automação de Jobs.
19/12/2015
Ronan Teixeira
Só tem essa forma de fazer ?
Na verdade é uma aplicação que estou querendo fazer pra min mesmo. Não é para cliente. Tenho um banco de dados de um programa só que ele gera no formato Firebird não tem como mudar porém gosto de trabalhar com sqlserver.
19/12/2015
Ronan Teixeira
O problema mesmo é que consigo fazer a consulta pelo linkserver mais quando trago para SP no startup do server ele não execulta o CMD openquery.
19/12/2015
Jothaz
Tem anos que não uso o Express então nem me lembro bem de suas restrições.
E não sei dizer o porque deste pau no OpenQuery.
Uso Linked Server com outro banco de dados sem problemas. Firebird usei a muitos anos e achei uma merda, mas é só minha opinião. E sei que algumas vezes não temos escolhas e temos de usar o que temos a disposição.
Para conseguir o que você quer eu vejo dois caminhos:
1-Criar um WindowsService, no caso o C# é a melhor opção que vai rodar nos intervalos definidos e executar a SP para incluir os dados.
2-Ou usar um .bat com o Windows Task Scheduler, que também funciona. Pesquise por "How create job SQL Server Express" que acredito que irá ajudar.
Ou esperemos que outros colaboradores do fórum dêem outras sugestão.
19/12/2015
Ronan Teixeira
Se der certo vou postar a resolução.
Obrigado.
20/12/2015
Marcos P
2-Ou usar um .bat com o Windows Task Scheduler, que também funciona. Pesquise por "How create job SQL Server Express" que acredito que irá ajudar.
Isso resolve seu problema...
Clique aqui para fazer login e interagir na Comunidade :)