Herramientas de usuario

Herramientas del sitio


informatica:programacion:php:snippets:bases_de_datos

Snippets PHP: Bases de datos

Oracle

Tipo CLOB

El tipo de dato CLOB (Character Large Object) es usado para almacenar hasta 4 GB de texto

$result = oci_execute($stid);
while($row = oci_fetch_assoc($stid)){
    echo $row['campo_clob']->load();
  //or
    echo $row['campo_clob']->read(2000);
}

El método load() permite obtener todo el contenido del campo CLOB, con la limitación de la memoria. El método read() necesita el tamaño, en bytes, de la información que se quiere leer.

Si el campo CLOB está vacío, PHP lo convertirá en string, así que antes de usar load() o read(), es mejor utilizar la función is_object() para verificar si es un objeto o no, por ejemplo:

if (is_object($row["campo_clob"])) {
    echo $row["campo_clob"]->load();
} else {
    echo $row["campo_clob"];
}

Insertar NULL

Para insertar un valor o el valor NULL (no el string 'NULL'):

if ($data["CLIENTE"] == null) {
    $cliente= "null";
} else {
    $cliente = "'" . $data["CLIENTE"] . "'";
}
 
$insertar_empresa_sql = "
    INSERT INTO asignacionempresasnew (
        cliente
    ) VALUES (
        $cliente
    )
";
 
mysqli_query($conexion, $insertar_empresa_sql);

Array a string con lista separada por comas

Útil por ejemplo cuando tenemos un array de elementos que luego queremos pasar en un IN de la cláusula WHERE de una consulta SQL:

$temp = array("abc","xyz");
 
$result = "'" . implode ( "', '", $temp ) . "'";
 
echo $result; // 'abc', 'xyz'
informatica/programacion/php/snippets/bases_de_datos.txt · Última modificación: por tempwin