SóProvas


ID
239626
Banca
CESPE / CEBRASPE
Órgão
ABIN
Ano
2010
Provas
Disciplina
Banco de Dados
Assuntos

No que se refere a SGBD associado para suporte a aplicações web,
inclusive com suporte ao processamento de transações e acesso
concorrente e simultâneo de diversos usuários, julgue os itens de
76 a 78.

Entre os comandos padrão de gerenciamento de transações, disponíveis em extensões da linguagem PHP, incluem-se os que realizam as funções de iniciar (begin transaction) e encerrar transação (end transaction), fazer roolback de uma transação, abortar uma transação (abort transaction), fundir uma transação a outra (join transaction) e separar uma transação de outra (split transaction).

Alternativas
Comentários
  • BEGIN TRANSACTION

    begin-stmt:

    syntax diagram begin-stmt

    commit-stmt:

    syntax diagram commit-stmt

    rollback-stmt:

    syntax diagram rollback-stmt
  • Segue o trecho do manual do PHP referindo-se as transações:

    http://www.php.net/manual/pt_BR/pdo.transactions.php

    Unfortunately, not every database supports transactions, so PDO (PHP DATA Objects) needs to run in what is known as "auto-commit" mode when you first open the connection. Auto-commit mode means that every query that you run has its own implicit transaction, if the database supports it, or no transaction if the database doesn't support transactions. If you need a transaction, you must use the PDO::beginTransaction() method to initiate one. If the underlying driver does not support transactions, a PDOException will be thrown (regardless of your error handling settings: this is always a serious error condition). Once you are in a transaction, you may use PDO::commit() or PDO::rollBack() to finish it, depending on the success of the code you run during the transaction.

    Portanto: as transações possíveis são commit, beginTransaction e rollBack

  • Nâo entendi porque a questão está errada, quem souber pode me explicar
    Tipo a extensões disponíveis  da linguagem PHP não tem todas essas funcões de iniciar (begin transaction) e encerrar transação (end transaction), fazer roolback de uma transação, abortar uma transação (abort transaction), fundir uma transação a outra (join transaction) e separar uma transação de outra (split transaction) ?
  • Acredito que a questão esteja errada pois em uma transação vc só tem as opções begin, commit ou rollback.
  • As operações fundir uma transação a outra (join transaction) e separar uma transação de outra (split transaction) não fazem sentido pois derrubariam a propriedade ACID do ISOLAMENTO.



    Bons estudos.
  • Complementando:
    Não existe ROOLBACK
    mas existe ROLLBACK
  • Prezados,

    A exemplo da extensão para o SQL Server , o PHP tem funções para iniciar uma transação , fazer rollback ( e não roolback ) , comitar a transação, encerrar a transação , mas não existe nada para fundir nem separar uma transação.

    Portanto a questão está errada.
    Gabarito: ERRADO.

    Fonte : https://secure.php.net/manual/pt_BR/function.sqlsr...
  • GABARITO ERRADO!

    .

    .

    Os comandos DTL são responsáveis por gerenciar diferentes transações ocorridas dentro de um banco de dados.

    Ele é dividido em 3 comandos:

    BEGIN TRANSACTION – Marca o começo de uma transação no banco da dados que pode ser completada ou não.

    COMMIT – Envia todos os dados da transação permanentemente para o banco de dados.

    ROLLBACK – Desfaz as alterações feitas na transação realizada.