(PHP 5, PHP 7, PECL OCI8 >= 1.1.0)
oci_field_scale — Indica la escala de un campo
Devuelve la escala de la columna con índice field
.
Para columnas FLOAT, la precisión no es cero y la escala es -127. Si la precisión es cero, entonces la columna es NUMBER. Otro número indica NUMBER(precisión, precisión).
statement
Un identificador de sentencia de OCI válido.
field
Puede ser un índice de campo (basado en 1) o un nombre.
Devuelve la escala como un entero, o FALSE
en caso de error.
Ejemplo #1 oci_field_scale() Example
<?php
// Crear la tabla con:
// CREATE TABLE mytab (c1 NUMBER, c2 FLOAT, c3 NUMBER(4), c4 NUMBER(5,3));
$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 if not fetching rows
$ncols = oci_num_fields($stid);
for ($i = 1; $i <= $ncols; $i++) {
echo oci_field_name($stid, $i) . " "
. oci_field_precision($stid, $i) . " "
. oci_field_scale($stid, $i) . "<br>\n";
}
// Salidas:
// C1 0 -127
// C2 126 -127
// C3 4 0
// C4 5 3
oci_free_statement($stid);
oci_close($conn);
?>
Nota:
En versiones de PHP anteriores a la 5.0.0 se debe usar ocicolumnscale() en su lugar. Este nombre aún se puede usar; se dejó como un alias de oci_field_scale() por razones de retrocompatibilidad. Sin embargo, este nombre es obsoleto y no se recomienda.