Assuntos
A transação é uma unidade de execução lógica que consiste em uma sequência operacional uma etapa ou várias etapas. Quatro características das transações: atomicidade, consistência, isoização e durabilidade Atomicidade: a menor unidade de execução da aplicação da transação, não podem ser divididas. É o órgão mínimo de execução lógica que não está mais dividida nos assuntos.
Consistência: o resultado da execução da transação deve tornar o banco de dados de uma consistência para outro estado.
ISOIDADES: A execução de cada transação não é interferida e as operações internas de qualquer transação são isoladas para outras transações simultâneas. Ou seja: o status intermediário da outra parte não pode ser visto entre a transação da execução simultânea e os assuntos da execução simultânea não podem ser afetados um pelo outro.
Durabilidade: a continuidade também é conhecida como persistência.
As frases envolvidas no banco de dados usuais são: um conjunto de DML (Data Munipuration Language, Data Operation Language), esse conjunto de instruções DML manterá uma boa consistência após a modificação; ; Uma instrução de controle de dados, linguagem de controle de dados), conceda principalmente e revogar declarações. As instruções DDL e DCL só podem estar disponíveis no máximo, porque causarão transações imediatamente de envio. Quando todas as operações do banco de dados contidas no escritório são implementadas com sucesso, as transações devem ser enviadas para tornar essas modificações permanentemente eficazes. Existem duas maneiras de envio de transações: envio de exibição e envio automático. Exibir envio: Use Commit para enviar envio automático: execute dll ou dcl ou o programa é retirado de qualquer execução da operação de banco de dados de qualquer banco de dados contido na transação, ele deve ser revertido para fazer todas as modificações na transação falhar. Existem duas maneiras de rolar a transação: reversão de exibição e reversão automática. Mostrar reversão: use reversão para rolar automaticamente: erro do sistema ou saia à força.
Possíveis questões de processamento simultâneo da transação
1. Leia suja: Uma transação lê os dados que não foram enviados por outra transação
2. Leia não repercordável: a operação de uma transação faz com que diferentes dados sejam lidos duas vezes antes e depois de outro
3. Phantom Read: A operação de uma transação leva aos resultados dos resultados dos resultados de duas consultas antes e depois de outra
Exemplo:
Durante a execução da transação A e B:
Java JDBC Mecanismo de transação
Importar Java.SQL.Connection; Final String Usuário = ROOT "; String querysql = "consulta sql"; Operação de atualização do PSTMTUPDATE = const.Preparestatement (UPDERSQL); ); } Finalmente {tente {if (pstmtupdate! = Null) {pstmtupdate.close ();} if (pstmtqury! = Null) {pstmtqury.close ();} if (con! ;}} Catch (sqLexception e2) {}}}}}
Suporte de assuntos da JDBC
A conexão do JDBC também suporta as coisas. Em outras palavras, a execução de cada instrução SQL será enviada ao banco de dados imediatamente, que será permanentemente eficaz e não poderá operá -la. Feche o envio automático da conexão e inicie as coisas. O método de conexão setautocomit é: Connection.setAutocommit (false); Quando ativarmos as coisas, a operação do banco de dados concluída na conexão atual não será enviada imediatamente ao banco de dados e precisamos chamar o método de confirmação de conexão. Se houver uma falha na declaração, você poderá ligar para a reversão. NOTA: Se a conexão encontrar uma anormalidade não processada da SQLEXCECTION, o sistema sairá de forma anormal e o sistema recuará automaticamente a transação. Se o programa capturar essa anormalidade, é necessário exibir a transação de reversão no tratamento anormal. A conexão fornece métodos para definir o ponto de economia no meio da transação: SetSavePoint. apontar. SetPoint SetSavePoint (Nome da String): Crie um ponto médio com um nome especificado na transação atual e retorne o objeto SavePoint do ponto médio. De acordo com o objeto do ponto médio. O nome da configuração é apenas uma melhor distinção entre o objeto do ponto médio.
O apoio do JDBC para transações é refletido em três aspectos:
1. Modo de compor automático
A conexão fornece uma propriedade de compromisso automático para especificar quando a transação acabou
2. Quando o compromisso automático é verdadeiro, quando a execução de cada operação independente de SQL é concluída, a transação é enviada imediatamente, o que significa que cada operação SQL é uma transação
Quando é calculada uma operação independente de SQL, a especificação JDBC é definida assim:
Para linguagem de operação de dados (DML) e DDL (Data Definition), assim que a frase for executada
3. Quando o comando automático é falso, cada transação deve exibir o método de chamada para enviar ou o método de retorno de chamada é exibido para reverter. Padrão de compromisso automático
Níveis de transação
JDBC define o nível de cinco transações ::
Ponto de economia
O JDBC define a interface SavePoint e fornece um mecanismo de controle de transações mais fino. Quando um ponto de economia é definido, você pode reverter o status no ponto de economia, não toda a transação da reversão. Você pode consultar essas informações. executado a declaração de modificação antes de executar a consulta. Para resolver esse problema, devemos introduzir o mecanismo de transação JDBC.