PHP 8.4.6 Released!

oci_set_edition

(PHP 5 >= 5.3.2, PHP 7, PHP 8, PECL OCI8 >= 1.4.0)

oci_set_editionDefine a edição do banco de dados

Descrição

oci_set_edition(string $edition): bool

Define a "edição" do banco de dados dos objetos a serem usados ​​por conexões subsequentes.

As edições Oracle permitem que versões simultâneas de aplicações sejam executadas usando o mesmo esquema e nomes de objetos. Isso é útil para atualizar sistemas ativos.

Chame oci_set_edition() antes de chamar oci_connect(), oci_pconnect() ou oci_new_connect().

Se uma edição definida que não seja válida no banco de dados, a conexão falhará mesmo que oci_set_edition() retorne sucesso.

Ao usar conexões persistentes, se uma conexão com a configuração de edição solicitada já existir, ela será reutilizada. Caso contrário, uma conexão persistente diferente será criada.

Parâmetros

edition

Nome da edição do Oracle Database criada anteriormente com o comando SQL "CREATE EDITION".

Valor Retornado

Retorna true em caso de sucesso ou false em caso de falha.

Exemplos

Exemplo #1 Dois scripts podem usar versões diferentes de myfunc() ao mesmo tempo

<?php

// Arquivo 1

echo "Versão 1 da aplicação\n";

oci_set_edition('ORA$BASE');
$c = oci_connect('hr', 'welcome', 'localhost/XE');

$s = oci_parse($c, "begin :r := myfunc(); end;");
oci_bind_by_name($s, ":r", $r, 20);
oci_execute($s);
echo
"O resultado é $r\n";

?>
<?php

// Arquivo 2

echo "Versão 2 da aplicação\n";

oci_set_edition('E1');
$c = oci_connect('hr', 'welcome', 'localhost/XE');

$s = oci_parse($c, "begin :r := myfunc(); end;");
oci_bind_by_name($s, ":r", $r, 20);
oci_execute($s);
echo
"O resultado é $r\n";

?>

Notas

Nota: Requisito de versão Oracle

Esta função está disponível a partir do Oracle 11gR2.

Cuidado

Conexões persistentes

Para evitar inconsistências e erros inesperados, não utilize ALTER SESSION SET EDITION para alterar a edição em conexões persistentes.

Cuidado

Pool de conexões DRCP

Para evitar inconsistências e erros inesperados ao usar edições e DRCP com o Oracle 11.2.0.1, mantenha uma correspondência um-para-um entre o oci8.connection_class e o nome da edição usada pelas aplicações. Cada servidor em pool de uma determinada classe de conexão deve ser usado apenas com uma edição. Essa restrição foi removida com o Oracle 11.2.0.2.

adicione uma nota

Notas Enviadas por Usuários (em inglês)

Não há notas de usuários para esta página.
To Top