administrador.base.orm._where.where_campo_llave - gamboamartin/administrador GitHub Wiki
where_campo_llave
La función where_campo_llave
es una función privada que genera una cláusula SQL WHERE
basada en un campo clave (campo_llave
), el identificador de un registro (registro_id
), y el nombre de una tabla (tabla
). Esta función valida los parámetros proporcionados y construye la cláusula WHERE
correspondiente para identificar un registro específico en la base de datos.
Signatura
private function where_campo_llave(string $campo_llave, int $registro_id, string $tabla): string|array
Parámetros
-
string $campo_llave
:
Una cadena que representa el nombre del campo clave en la tabla, generalmente utilizado como la clave primaria o un identificador único. -
int $registro_id
:
Un valor entero que representa el identificador del registro que se desea seleccionar o modificar en la consulta SQL. -
string $tabla
:
Una cadena que representa el nombre de la tabla en la base de datos donde se buscará el registro.
Retorno
string|array
:
Retorna una cadena que representa la cláusula SQLWHERE
que identifica un registro específico en la tabla. En caso de error, retorna un array de error generado por$this->error->error()
.
Explicación Detallada
-
Validación del nombre de la tabla:
- La función utiliza
trim()
para eliminar espacios en blanco al inicio y al final del parámetro$tabla
. - Si
$tabla
está vacía después de la limpieza, se genera un mensaje de error y se retorna un array con el mensaje de error.
- La función utiliza
-
Validación del campo clave:
- La función utiliza
trim()
para eliminar espacios en blanco al inicio y al final del parámetro$campo_llave
. - Si
$campo_llave
está vacío después de la limpieza, se genera un mensaje de error y se retorna un array con el mensaje de error.
- La función utiliza
-
Construcción de la cláusula
WHERE
:- Si los parámetros
$tabla
y$campo_llave
son válidos, la función construye la cláusula SQLWHERE
utilizando la siguiente sintaxis:WHERE tabla.campo_llave = registro_id
.
- Si los parámetros
-
Retorno de la cláusula
WHERE
:- La función retorna la cláusula SQL
WHERE
generada que identifica el registro específico en la tabla.
- La función retorna la cláusula SQL
Ejemplos
$campo_llave = 'id';
$registro_id = 123;
$tabla = 'usuarios';
$resultado = $this->where_campo_llave($campo_llave, $registro_id, $tabla);
// Resultado esperado:
// ' WHERE usuarios.id = 123 '
// Un array de error si ocurre algún problema.
Código de la Función
private function where_campo_llave(string $campo_llave, int $registro_id, string $tabla): string|array
{
$tabla = trim($tabla);
if($tabla === ''){
return $this->error->error(mensaje:'Error tabla esta vacia', data:$tabla, es_final: true);
}
$campo_llave = trim($campo_llave);
if($campo_llave === ''){
return $this->error->error(mensaje:'Error campo_llave esta vacia', data:$campo_llave, es_final: true);
}
return " WHERE $tabla".".$campo_llave = $registro_id ";
}