Active record

Na Galipedia, a Wikipedia en galego.

En informática, o patrón active record é un patrón de deseño que se adoita dar nas aplicación empresariais.

Active Record é un enfoque ó problema de acceder ós datos dunha base de datos. Unha fila na táboa da base de datos (ou vista) envólvese nunha clase, de maneira que se asocian filas únicas da base de datos con obxectos da linguaxe de programación empregada. Cando se crea un destes obxectos, engádese una fila á táboa da base de datos. Cando se modifican os atributos do obxecto, actualízase a fila da base de datos. A clase envoltorio implementa métodos de acceso para cada columna da táboa ou vista.

Unha das implementacións máis populares pódese atopar en Ruby on Rails. Por exemplo, se existe unha táboa chamada partes coas columnas id (clave primaria), nome (de tipo varchar ) e precio (de tipo monetario o de dobre precisión) e existe a clase Parte, o seguinte código

a = Parte.new
a.nome = "Parte de exemplo"
a.prezo = 123.45
a.save

creará unha nova fila na base de datos cos valores proporcionados, que vén a ser máis ou menos equivalente á seguinte sentenza en SQL:

INSERT INTO partes (nome, precio) VALUES ('Parte de exemplo', 123.45);

Da mesma maneira, a clase pódese emplear para consultar a base de datos:

b = Parte.find(:first, :conditions => ['nome = ?', nomecacharro])

creará un só obxecto a partir da primera fila da base de datos cuxa columna nome sexa igual ós contidos da variable nomecacharro, e vén sendo equivalente á sentenza:

SELECT * FROM partes WHERE nombre = ? LIMIT 1;

Onde o parámetro posicional ? reemprázase por nombrecacharro.

Ó aplicar "save" ó obxecto gardado, o que Active Record realiza é ver se o obxecto existe para modificalo, do contrario agrega os datos á base de datos.

Véxase tamén[editar | editar a fonte]

Ligazóns externas[editar | editar a fonte]