As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.
As seguinte constantes podem ser passadas para ibase_trans() para especificar o funcionamento da transação.
Constante | Descrição |
---|---|
IBASE_DEFAULT | Serão usadas as definições padrão para a transação. Este padrão é determinado pela biblioteca do cliente, a qual define-o como IBASE_WRITE|IBASE_CONCURRENCY|IBASE_WAIT na maioria ds casos. |
IBASE_READ | Começa uma transação apenas para leitura. |
IBASE_WRITE | Começa uma transação de leitura e escrita. |
IBASE_CONSISTENCY | Começa uma transação com o nível de isolação definido como 'consistency', o qual indica que a transação não pode ler de tabelas que estão sendo modificadas por outras transações concorrentes. |
IBASE_CONCURRENCY | Começa uma transação com o nível de isolação definido como 'concurrency' (ou 'snapshot'), o qual indica que a transação tem acesso a todas as tabelas, mas não pode ver as modificações que foram gravadas por outras transações após a transação ter começado. |
IBASE_COMMITTED | Começa uma transação com o nível de isolação definido como 'read committed'. Esta opção deve ser combinada com IBASE_REC_VERSION ou IBASE_REC_NO_VERSION. Este nível de isolação permite acesso para as modifcações salvar após o início da transação. Se IBASE_REC_NO_VERSION for especificada, apenas a ultima versão de uma linha pode ser lida. Se IBASE_REC_VERSION for especificada, uma linha pode ser lida mesmo quando exista uma modificação pendente em uma transação concorrente. |
IBASE_WAIT | Indica que uma transação deve esperar e tentar novamente quando aconteça um conflito. |
IBASE_NOWAIT | Indica que a transação deve falhar imediatamente quando aconteça um conflito. |
As seguintes constantes podem ser passadas para ibase_fetch_row(), ibase_fetch_assoc() ou ibase_fetch_object() para especificar o funcionamento para obter.
Constante | Descrição |
---|---|
IBASE_FETCH_BLOBS | Também disponível como IBASE_TEXT para compatibilidade com versões anteriores. Faz com que o conteúdo de campos BLOB serão retornados diretamente, ao invés de serem retornados como identificadores BLOB. |
IBASE_FETCH_ARRAYS | Faz com que as arrays sejam retornadas diretamente. Se não, são retornados identificadores de array. Identificadores de array somente podem ser usados como argumentos para operações INSERT, já que não estão disponíveis atualmente nenhuma função para manipular identificadores de array. |
IBASE_UNIXTIME | Faz com que campos de date e time não sejam retornados como strings, mas como timestamps UNIX (o número de segundos deste epoch, o qual é 1-Jan-1970 0:00 UTC). Pode ser problematico se usado com datas antes de 1970 em alguns sistemas. |
As seguintes constantes são usados para passar requesições e opções para as funções da API de serviços (ibase_server_info(), ibase_db_info(), ibase_backup(), ibase_restore() e ibase_maintain_db()). Por favor veja o manual do Firebird/InterBase para o significado destas opções.