• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Zamits

Detectar alterações a uma tabela numa Base de Dados

4 mensagens neste tópico

Boas pessoal.

Eu estou a desenvolver uma aplicação em C# que comunica com um BD utilizando o SQL Server 2000.

O que eu pretendia saber é se existe alguma maneira de, a partir da minha aplicação em C#, que corre em ciclo infinito, saber se existiram alterações a uma tabela na base de dados.

Ou seja, eu pretendo que ao ser realizado algum insert ou update a um dos registos dessa tabela a minha apicação C# tenha conhecimento e detecte essa mesma alteração.

Qual a melhor forma de conseguir isto? É possível consegui-lo apenas a partir do programa em C#, ou tenho que criar algum procedimento em SQL que depois avisa a minha aplicação de que existiram mudanças?

Desde já obrigado, Zamits!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

...as minhas dúvidas quanto aos triggers neste caso são as seguintes:

- Primeiro, se criar um trigger externo à aplicação escrita em C#, como é que aviso essa mesma aplicação quando o trigger é disparado?

- Segundo, é possível criar triggers embebidos em código C#, para o SQL Server 2000? É que todos os exemplos que vejo na net, mostram realmente triggers em C#, mas utilizando o template do Visual Studio "SQLServerProject" e que apenas funciona com a versão 2005 do SQL Server, enquanto que eu estou a desenvolver utilizando a 2000.

Cumprimentos

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

select * from tabela where timestamp de actualização>timestamp ultima alteração

Se tiver liberdade de alteração do ddl, esta solução vai-lhe permitir solucionar o seu problema concreto, bem como evoluir a sua arquitectura no futuro com suporte de versionamento.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora