Set Transaction isolation level serializable
Prezados amigos delphianos
Boa Noite Tenho um sistema e utilizo um banco de dados em sql server e tento executar a intrução através de uma clase desenvolvida por mim sendo que não estou conseguindo alcançar o objetivo. o que acontece, Criei uma query em tempo de execução; FQry:Tquery; Procedure x(Tabela:string); FQry := Tquery.create(nil);
if fqry.active then
fqry.close;
fqry.sql.clear;
fqry.sql.add = 'BEGIN TRANSACTION %S'+
#10'TRANSACTION ISOLATION LEVEL SERIALIZABLE'+
#10'SELECT * FROM %S';
fqry.execsql;
O que acontece a instrução executa, no exemplo deveria bloquear passo no momento de chamar o procedimento no meu coringa a TB_PRODUTOS. Então neste exato momento a tabela de produtos não poderia mais aceitar posts e nem apply. e ela esta aceitando.
Alguém sabe me informar como eu faço para solucionar este problema? Desde Já Agradeço Um ótimo dia
att : Leonardo Coelho Borges
Boa Noite Tenho um sistema e utilizo um banco de dados em sql server e tento executar a intrução através de uma clase desenvolvida por mim sendo que não estou conseguindo alcançar o objetivo. o que acontece, Criei uma query em tempo de execução; FQry:Tquery; Procedure x(Tabela:string); FQry := Tquery.create(nil);
if fqry.active then
fqry.close;
fqry.sql.clear;
fqry.sql.add = 'BEGIN TRANSACTION %S'+
#10'TRANSACTION ISOLATION LEVEL SERIALIZABLE'+
#10'SELECT * FROM %S';
fqry.execsql;
O que acontece a instrução executa, no exemplo deveria bloquear passo no momento de chamar o procedimento no meu coringa a TB_PRODUTOS. Então neste exato momento a tabela de produtos não poderia mais aceitar posts e nem apply. e ela esta aceitando.
Alguém sabe me informar como eu faço para solucionar este problema? Desde Já Agradeço Um ótimo dia
att : Leonardo Coelho Borges
Leonardo Borges
Curtidas 0
Respostas
Emerson Nascimento
26/01/2010
onde está sendo feita a substituição de %S pelo conteúdo do parâmetro?
outra coisa: você cria o dataset e não o liga ao banco de dados e ainda assim ele executa?
outra coisa: você cria o dataset e não o liga ao banco de dados e ainda assim ele executa?
GOSTEI 0
Leonardo Borges
26/01/2010
Eu tenho um evendo no recordstate (insert,edit) faça
faço sim as conexões com a base de dados e passo os alias por um acaso esqueci de especificar no momento em que escrevi aqui. mais considere como se todas as bases estivessem conectadas e que o parametro %S fosse TB_Produtos e mesmo assim ele não esta funcionando.
GOSTEI 0
Leonardo Borges
26/01/2010
Estou aceitando qualquer outra forma de efetuar um lock
GOSTEI 0
Wagner Marrane
26/01/2010
Veja se ajuda
http://social.msdn.microsoft.com/Forums/pt-BR/520/thread/718135f0-2e0c-435f-b8ab-88985f471245/
http://social.msdn.microsoft.com/Forums/pt-BR/520/thread/718135f0-2e0c-435f-b8ab-88985f471245/
GOSTEI 0