Edición de «MODELOS»

De KumbiaPHP Framework Wiki

Advertencia: no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición. Si inicias sesión o creas una cuenta, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.

Puedes deshacer la edición. Antes de deshacer la edición, comprueba la siguiente comparación para verificar que realmente es lo que quieres hacer, y entonces guarda los cambios para así efectuar la reversión.

Revisión actual Tu texto
Línea 16: Línea 16:
 
Ver las filas como objetos y las tablas como clases tiene otro beneficio. Permiten crear nuevos accesos para nuestras tablas. Por ejemplo si tenemos una clase Clientes y tiene un campo primer nombre, otro segundo nombre y apellidos entonces podemos crear un acceso llamado getNombre así:  
 
Ver las filas como objetos y las tablas como clases tiene otro beneficio. Permiten crear nuevos accesos para nuestras tablas. Por ejemplo si tenemos una clase Clientes y tiene un campo primer nombre, otro segundo nombre y apellidos entonces podemos crear un acceso llamado getNombre así:  
  
<source lang=php>
+
<source lang=php line>
 
public function getNombre(){
 
public function getNombre(){
 
     return  $this->primer_nombre.” “.$this->segundo_nombre.” “.
 
     return  $this->primer_nombre.” “.$this->segundo_nombre.” “.
Línea 23: Línea 23:
 
</source>
 
</source>
  
Kumbia proporciona una serie de clases (ActiveRecord y SessionRecord) que permiten realizar este mapeo y además ejecutar operaciones nativas sobre las relaciones de la base de datos de forma más humana y entendible.
+
Kumbia proporciona una serie de clases (ActiveRecord y SessionRecord) que permiten realizar este mapeo y además ejecutar operaciones nativas sobre las relaciones de la base de datos de forma más humana y entendible.  
  
 
= Capa de Abstracción Independiente en Kumbia=
 
= Capa de Abstracción Independiente en Kumbia=
Línea 43: Línea 43:
 
Implementan las clases de la capa de negocios: Productos, Clientes, Facturas, Empleados, etc.  
 
Implementan las clases de la capa de negocios: Productos, Clientes, Facturas, Empleados, etc.  
 
Mantienen los datos y su lógica juntos: Un producto tiene una cantidad y se vende sólo si está activo.
 
Mantienen los datos y su lógica juntos: Un producto tiene una cantidad y se vende sólo si está activo.
Representar relaciones en el modelo: Un Cliente tiene muchas Facturas
+
Representar relaciones en el modelo: Una Cliente tiene muchas Facturas
  
 
== Acceso Directo a RDBMS ==
 
== Acceso Directo a RDBMS ==
  
===La Clase DbBase===
+
===La Clase DdBase===
  
 
La clase “DbBase” personalizada para cada motor es cargada automáticamente y está disponible globalmente. El valor database.type en config/environment.ini, indica qué driver se debe cargar automáticamente.  
 
La clase “DbBase” personalizada para cada motor es cargada automáticamente y está disponible globalmente. El valor database.type en config/environment.ini, indica qué driver se debe cargar automáticamente.  
  
'''Crear una instancia de DdBase'''
+
Crear una instancia de DdBase
  
 
Ya que los parámetros de conexión de la base de datos están definidos en config/environment.ini podemos utilizar esta función para crear el objeto db.  
 
Ya que los parámetros de conexión de la base de datos están definidos en config/environment.ini podemos utilizar esta función para crear el objeto db.  
  
'''Ejemplo:'''
+
Ejemplo:  
  
 
  <source lang=php line>
 
  <source lang=php line>
Línea 101: Línea 101:
 
====connect()====
 
====connect()====
  
'''Descripción:'''
+
Descripción: Permite crear o reestablecer una conexión con el motor de base de datos.  
 
 
Permite crear o reestablecer una conexión con el motor de base de datos.  
 
  
'''Sintaxis:'''
+
Sintaxis:  
  
<source lang=php line>
 
 
$db->connect([string $host], [string $user], [string $password], [string $database_name])
 
$db->connect([string $host], [string $user], [string $password], [string $database_name])
</source>
 
  
 
====query()====
 
====query()====
  
'''Descripción:'''
+
Descripción: Permite enviar sentencias SQL al motor de base de datos. El parámetro debug permite ver un mensaje del SQL que es enviado al motor de base de datos.
  
Permite enviar sentencias SQL al motor de base de datos. El parámetro debug permite ver un mensaje del SQL que es enviado al motor de base de datos.
+
Sintaxis:  
 
 
'''Sintaxis: '''
 
  
<source lang=php line>
 
 
$db->query(string $sql, [bool $debug=false])
 
$db->query(string $sql, [bool $debug=false])
</source>
 
  
'''Ejemplo: '''
+
Ejemplo:  
  
<source lang=php line>
+
1.<?php
<?php
+
2.        $db = db::raw_connect();
  $db = db::raw_connect();
+
3.        $db->query(“update clientes set estado = ‘A’”);
  $db->query(“update clientes set estado = ‘A’”);
+
4.        $db->close();
  $db->close();
+
5. ?>
?>
 
</source>
 
  
 
====close()====  
 
====close()====  
  
'''Descripción:'''
+
Descripción: Cierra la conexión encapsulada en el objeto
  
Cierra la conexión encapsulada en el objeto
+
Sintaxis:
  
'''Sintaxis:'''
 
 
<source lang=php line>
 
 
$db->close()
 
$db->close()
</source>
 
  
 
====fetch_array()====
 
====fetch_array()====
  
'''Descripción: '''
+
Descripción: Recorre el cursor ejecutado en la última operación select.
  
Recorre el cursor ejecutado en la última operación select.
+
Sintaxis:
  
'''Sintaxis: '''
 
 
<source lang=php line>
 
 
$db->fetch_array([cursor $cursor], [int $tipo_resultado=DB_BOTH])
 
$db->fetch_array([cursor $cursor], [int $tipo_resultado=DB_BOTH])
</source>
 
  
'''Ejemplo:'''
+
Ejemplo:  
  
<source lang=php line>
+
1.<?php
<?php
+
2.        $db = db::raw_connect();
  $db = db::raw_connect();
+
3.        $db->query(“select codigo, nombre from productos”);
  $db->query(“select codigo, nombre from productos”);
+
4.        while($producto = $db->fetch_array()){
 
+
5.      print$producto[‘nombre’];
  while($producto = $db->fetch_array()){
+
6.        }//fin while
      print$producto[‘nombre’];
+
7.        $db->close();
  }//fin while
+
8. ?>
   
 
  $db->close();
 
?>
 
</source>
 
  
 
Los tipos de resultado pueden ser:  
 
Los tipos de resultado pueden ser:  
Línea 180: Línea 158:
 
====num_rows()====  
 
====num_rows()====  
  
'''Descripción:'''
+
Descripción: Devuelve el número de filas de la última instrucción select enviada al motor de base de datos.
  
Devuelve el número de filas de la última instrucción select enviada al motor de base de datos.
+
Sintaxis:
  
'''Sintaxis:'''
 
 
<source lang=php line>
 
 
$db->num_rows([cursor $cursor]);  
 
$db->num_rows([cursor $cursor]);  
</source>
 
  
'''Ejemplo:'''
+
Ejemplo:  
  
<source lang=php line>
+
1.<?php
<?php
+
2.    $db = db::raw_connect;
    $db = db::raw_connect;
+
3.    $db->query(“select codigo, nombre from productos”);
    $db->query(“select codigo, nombre from productos”);
+
4.  print “Hay  ”.$db->num_rows().“ productos “;
  print “Hay  ”.$db->num_rows().“ productos “;
+
5.    $db->close();
    $db->close();
+
6. ?>
?>
 
</source>
 
  
 
====field_name()====
 
====field_name()====
  
'''Descripción:'''
+
Descripción: Devuelve el nombre del campo en la posición $number del último select enviado al motor de base de datos.
  
Devuelve el nombre del campo en la posición $number del último select enviado al motor de base de datos.
+
Sintaxis:  
 
 
'''Sintaxis:'''
 
  
<source lang=php line>
 
 
$db->field_name(int $number, [cursor $cursor]);
 
$db->field_name(int $number, [cursor $cursor]);
</source>
 
  
 
====data_seek()====
 
====data_seek()====
  
'''Descripción:'''
+
Descripción: Se mueve a la posición $number del cursor de la última instrucción select enviada al motor de base de datos.
  
Se mueve a la posición $number del cursor de la última instrucción select enviada al motor de base de datos.
+
Sintaxis:
  
'''Sintaxis:'''
 
 
<source lang=php line>
 
 
$db->data_seek(int $number, [cursor $cursor]);
 
$db->data_seek(int $number, [cursor $cursor]);
</source>
 
  
 
====affected_rows()====
 
====affected_rows()====
  
'''Descripción:'''
+
Descripción: Devuelve el número de filas afectadas en la última instrucción insert, update o delete.
  
Devuelve el número de filas afectadas en la última instrucción insert, update o delete.
+
Sintaxis:
  
'''Sintaxis:'''
 
 
<source lang=php line>
 
 
$db->affected_rows();
 
$db->affected_rows();
</source>
 
  
 
====error()====
 
====error()====
  
'''Descripción: '''
+
Descripción: Devuelve la cadena descriptiva del último error generado por base de datos producido por la última instrucción SQL.
  
Devuelve la cadena descriptiva del último error generado por base de datos producido por la última instrucción SQL.
+
Sintaxis:
  
'''Sintaxis:'''
+
  $db->error();  
<source lang=php line>
 
  $db->error();
 
</source>
 
  
 
====no_error()====
 
====no_error()====
  
'''Descripción:'''
+
Descripción: Devuelve el número interno del último error generado por base de datos producido por la última instrucción SQL.
  
Devuelve el número interno del último error generado por base de datos producido por la última instrucción SQL.
+
Sintaxis:  
 
 
'''Sintaxis: '''
 
  
<source lang=php line>
 
 
$db->no_error();
 
$db->no_error();
</source>
 
  
 
====find()====
 
====find()====
  
'''Descripción:'''
+
Descripción: Ejecuta un Select en el motor con los parámetros enviados y devuelve un Array con los resultados.
  
Ejecuta un Select en el motor con los parámetros enviados y devuelve un Array con los resultados.
+
Sintaxis:  
 
 
'''Sintaxis:'''
 
  
<source lang=php line>
 
 
$db->find(string $table, [string $where=”1=1”], [string $fields=”*”], [string $orderBy=”1”]);
 
$db->find(string $table, [string $where=”1=1”], [string $fields=”*”], [string $orderBy=”1”]);
</source>
 
  
'''Ejemplo: '''
+
Ejemplo:  
  
<source lang=php line>
+
1.<?php
<?php
+
2.  $db = db::raw_connect();
  $db = db::raw_connect();
+
3.  foreach($db->find(“productos”) as $producto){
  foreach($db->find(“productos”) as $producto){
+
4.      print $producto[‘nombre’];
      print $producto[‘nombre’];
+
5.  } //fin del foreach  
  } //fin del foreach  
+
6.  $db->close();
  $db->close();
+
7. ?>
?>
 
</source>
 
  
 
====in_query()====
 
====in_query()====
  
'''Descripción:'''
+
Descripción: Devuelve el resultado de una instrucción SQL en un array listo para ser recorrido.
  
Devuelve el resultado de una instrucción SQL en un array listo para ser recorrido.
+
Sintaxis:
  
'''Sintaxis: '''
 
<source lang=php line>
 
 
$db->in_query(string $sql, [bool $debug=false], [int $tipo_resultado = db::DB_BOTH]);
 
$db->in_query(string $sql, [bool $debug=false], [int $tipo_resultado = db::DB_BOTH]);
</source>
 
  
'''Ejemplo:'''
+
Ejemplo:  
  
<source lang=php line>
+
1.<?php
<?php
+
2.  $db = db::raw_connect();
  $db = db::raw_connect();
+
3.  foreach($db->in_query(“select * from productos”) as $producto){
  foreach($db->in_query(“select * from productos”) as $producto){
+
4.      print $producto[‘nombre’];
      print $producto[‘nombre’];
+
5.  }//fin del foreach  
  }//fin del foreach  
+
6.  $db->close();  
  $db->close();  
+
7.?>
?>
 
</source>
 
  
 
====in_query_assoc()====  
 
====in_query_assoc()====  
  
'''Descripción:'''
+
Descripción: Devuelve el resultado de una instrucción SQL en un array con indexado asociativo listo para ser recorrido.
  
Devuelve el resultado de una instrucción SQL en un array con indexado asociativo listo para ser recorrido.
+
Sintaxis:  
 
 
'''Sintaxis:'''
 
 
<source lang=php line>
 
<source lang=php line>
 
$db->in_query_assoc(string $sql, [bool $debug=false]);
 
$db->in_query_assoc(string $sql, [bool $debug=false]);
Línea 321: Línea 261:
  
 
'''Descripción:'''
 
'''Descripción:'''
 
 
Devuelve el resultado de una instrucción SQL en un array con indexado numérico listo para ser recorrido.  
 
Devuelve el resultado de una instrucción SQL en un array con indexado numérico listo para ser recorrido.  
  
 
'''Sintaxis:'''
 
'''Sintaxis:'''
 
 
<source lang=php line>
 
<source lang=php line>
 
$db->in_query_num(string $sql, [bool $debug=false]);
 
$db->in_query_num(string $sql, [bool $debug=false]);
Línea 333: Línea 271:
  
 
'''Descripción:'''
 
'''Descripción:'''
 
 
Devuelve la primera fila de un select . Es útil cuando el select devuelve una sola fila  
 
Devuelve la primera fila de un select . Es útil cuando el select devuelve una sola fila  
  
Línea 358: Línea 295:
 
  <source lang=php line>
 
  <source lang=php line>
 
  $db->table_exists(string $table);
 
  $db->table_exists(string $table);
</source>
+
</source>
 
 
[[Categoría:Modelos]]
 

Ten en cuenta que todas las contribuciones a KumbiaPHP Framework Wiki pueden ser editadas, modificadas o eliminadas por otros colaboradores. Si no deseas que las modifiquen sin limitaciones, no las publiques aquí.
Al mismo tiempo, asumimos que eres el autor de lo que escribiste, o lo copiaste de una fuente en el dominio público o con licencia libre (véase Proyecto:Derechos de autor para más detalles). ¡No uses textos con copyright sin permiso!

Para editar esta página, responde la pregunta que aparece abajo (más información):

Cancelar Ayuda de edición (se abre en una ventana nueva)