oci_field_size

(PHP 5, PHP 7, PHP 8, PECL OCI8 >= 1.1.0)

oci_field_sizeRetorna o tamanho do campo

Descrição

oci_field_size(resource $statement, string|int $column): int|false

Retorna o tamanho da coluna informada em column.

Parâmetros

statement

Um identificador de instrução OCI válido.

column

Pode ser o índice do campo (baseado em 1) ou o nome.

Valor Retornado

Retorna o tamanho de column em bytes, ou false em caso de falha

Exemplos

Exemplo #1 Exemplo de oci_field_size()

<?php

// Crie a tabela com:
// CREATE TABLE mytab (number_col NUMBER, varchar2_col varchar2(1),
// clob_col CLOB, date_col DATE);

$conn = oci_connect("hr", "hrpwd", "localhost/XE");
if (!
$conn) {
$m = oci_error();
trigger_error(htmlentities($m['message']), E_USER_ERROR);
}

$stid = oci_parse($conn, "SELECT * FROM mytab");
oci_execute($stid, OCI_DESCRIBE_ONLY); // Use OCI_DESCRIBE_ONLY se não estiver buscando linhas

echo "<table border=\"1\">\n";
echo
"<tr>";
echo
"<th>Nome</th>";
echo
"<th>Tipo</th>";
echo
"<th>Comprimento</th>";
echo
"</tr>\n";

$ncols = oci_num_fields($stid);

for (
$i = 1; $i <= $ncols; $i++) {
$column_name = oci_field_name($stid, $i);
$column_type = oci_field_type($stid, $i);
$column_size = oci_field_size($stid, $i);

echo
"<tr>";
echo
"<td>$column_name</td>";
echo
"<td>$column_type</td>";
echo
"<td>$column_size</td>";
echo
"</tr>\n";
}

echo
"</table>\n";

// Resultado:
// Nome Tipo Comprimento
// NUMBER_COL NUMBER 22
// VARCHAR2_COL VARCHAR2 1
// CLOB_COL CLOB 4000
// DATE_COL DATE 7

oci_free_statement($stid);
oci_close($conn);

?>

Veja Também

adicione uma nota

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

up
0
rudi at darx dot com
24 years ago
Just a note regarding the size of Oracle NUMBERS will always return 22 as their "size".

This seems to be an Oracle feature. The rest of the documentation is in bug5156.
To Top