Como fazer bom uso de Transaction no banco de dados?
Na operação real do ASP, sempre ocorre tal situação, como transferir dinheiro da minha conta para a conta de Fei Wenhua no banco.
Minha conta mostrou que havia sido debitada, mas devido a uma falha no sistema do banco, a alteração do banco de dados da conta de Fei Wenhua falhou.
Como isso deve ser tratado? Não deve haver perda do valor da minha conta, certo?
É claro que seus interesses não serão perdidos e as informações alteradas do banco de dados da conta serão restauradas automaticamente.
O que é utilizado aqui é a função interativa (TRANSACTION), que é composta por IIS e MTS (Microsoft Transaction Server)
Feito juntos. Sua função é: quando todas as alterações do banco de dados no programa ASP forem bem-sucedidas, será considerado bem-sucedido se uma delas;
Se uma alteração no banco de dados falhar, outros registros alterados do banco de dados serão restaurados automaticamente.
Os bancos de dados SQL SERVER e ORACLE fornecem funções interativas, mas o ACCESS não.
Esta função interativa funciona no âmbito de um programa ASP, ou seja, todas as bases de dados envolvidas neste programa possuem funções interativas.
O método consiste em adicionar: na primeira linha do programa ASP:
TRANSACTION=Obrigatório
Para informar ao IIS que este programa deseja usar funções interativas, o programa ASP específico:
< %@ TRANSACTION=Obrigatório LANGUAGE=VBScript% >
…
<% Definir obj1 = Server.CreateObject(testobj.cls1)% >
< % = obj1.data3t(1,10)% >
<%
SubOnTransactionCommit()
…
Finalizar sub
SubOnTransactionAbort()
…
Finalizar sub
%>