Fórum Saber que usuário está usando Registro #259058
19/11/2004
0
A mensagem ficaria algo do tipo:
´Registro está sendo utilizado pelo usuário ´
ou então
´Registro está sendo utilizado pelo computador ´
Utilizo Delphi 7, com Firebird 1.5.
Thomaz_prg
Curtir tópico
+ 0Posts
19/11/2004
Jc_analista
Gostei + 0
19/11/2004
Thomaz_prg
Obrigado pela ajuda mas, eu também havia pensado nesta forma. Porém, vi um sistema, feito em uma linguagem chamada Progress, que faz isso diretamente. O erro retornado pelo banco de dados já contém o nome do usuário que está utilizando o registro, e achei que, o Firebird sendo um SGBD, também teria como pegar o nome do usuário que está usando o banco, quem sabe através de um comando SQL, sei lá.
Mas de qualquer forma obrigado.
Mais alguém tem alguma idéia???
Gostei + 0
19/11/2004
Thomaz_prg
Obrigado pela ajuda mas, eu também havia pensado nesta forma. Porém, vi um sistema, feito em uma linguagem chamada Progress, que faz isso diretamente. O erro retornado pelo banco de dados já contém o nome do usuário que está utilizando o registro, e achei que, o Firebird sendo um SGBD, também teria como pegar o nome do usuário que está usando o banco, quem sabe através de um comando SQL, sei lá.
Mas de qualquer forma obrigado.
Mais alguém tem alguma idéia???
Gostei + 0
19/11/2004
Inutaishou
A unica outra solução que posso recomendar é que você trave um arquivo contendo o nome da tabela e o número do registro que está travado...
Quando for alterar, tente excluir todos os arquivos que estiverem no diretório... Os que ficarem estão travados... Aí, é só verificar os arquivos que estão ali e verificar se o registro que está tentando alterar está ali...
[]´s,
Gostei + 0
19/11/2004
Thomaz_prg
Consegui travar o registro, utilizando o comando SQL ´select * from tabela where codigo = 1 with lock´. Ele evita que 2 usuários tentem alterar o mesmo registro ao mesmo tempo.
O que quero é, na hora de rerornar que o registro está sendo usado, o Firebird, me indicasse quem é o usuário, ou qual é a máquina que está usando este registro. Mas gostaria de fazer isso diretamente pelo banco de dados, pois, se houverem muitas máquinas acessando, usando seu exemplo, eu teria que estar gravando estes arquivos no servidor (para serem compartilhados), e isso aumentaria o trafego na rede, sendo inviável.
Mas de qualquer forma muito obrigado pela ajuda.
Mas o que quero é saber, qual usuário (ou terminal) está utilizando o registro.
Gostei + 0
19/11/2004
Thomaz_prg
Gostei + 0
23/11/2004
Thomaz_prg
Gostei + 0
28/11/2004
Thomaz_prg
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)