Hi all.
En estos meses, en este foro he leido:
- quien tiene el jefe que ama los SP y no entiende esas query raras que
produce este bicho de NHb.
- quien tiene problema con algún tema en especial y, para no tirar un
query en el código, empieza a mirar iBATIS
- quien se preocupa por los campos calculados porque quiere que sea el
RDBMS que se ocupe de esos calculos
- quien mapea clases para CRUD y después se encuentra que cuando quiere
poner un "Customer" en un combo se viene la banana con el mono incluido.
- etc.
Vuelvan a casita .....
La 1.2.0.Beta2 ya suporta varias de esas cosas.
Por ejemplo:
<class name="Person" table="PERSON">
<id name="Id" unsaved-value="0" column="PERID">
<generator class="increment"/>
</id>
<property name="Name" not-null="true" column="NAME"/>
<loader query-ref="person"/>
<sql-insert>INSERT INTO PERSON (NAME, PERID) VALUES ( UPPER(?),
? )</sql-insert>
<sql-update>UPDATE PERSON SET NAME=UPPER(?) WHERE
PERID=?</sql-update>
<sql-delete>DELETE FROM PERSON WHERE PERID=?</sql-delete>
</class>
o para las collections
<sql-query name="organizationEmployments">
<load-collection alias="empcol" role="Organization.Employments"/>
SELECT {empcol.*}
FROM EMPLOYMENT empcol
WHERE EMPLOYER = :id
ORDER BY STARTDATE ASC, EMPLOYEE ASC
</sql-query>
Te gustan las stored procedure ?
<sql-query name="selectAllEmployments">
<return class="Employment">
<return-property name="Employee" column="EMPLOYEE"/>
<return-property name="Employer" column="EMPLOYER"/>
<return-property name="StartDate" column="STARTDATE"/>
<return-property name="EndDate" column="ENDDATE"/>
<return-property name="RegionCode" column="REGIONCODE"/>
<return-property name="id" column="EMPID"/>
<return-property name="Salary">
<!-- as multi column properties are not supported via the
{}-syntax, we need to provide an explicit column list
for salary via <return-property> -->
<return-column name="VALUE"/>
<return-column name="CURRENCY"/>
</return-property>
</return>
exec selectAllEmployments
</sql-query>
<database-object>
<create>
CREATE PROCEDURE selectAllEmployments AS
SELECT EMPLOYEE, EMPLOYER, STARTDATE, ENDDATE,
REGIONCODE, EMPID, VALUE, CURRENCY
FROM EMPLOYMENT
</create>
<drop>
DROP PROCEDURE selectAllEmployments
</drop>
</database-object>
<sql-query name="paramhandling_mixed">
<return-scalar column="value" type="long" />
<return-scalar column="value2" type="long" />
exec paramHandling ?, :second
</sql-query>
Ahora bien.... ojo con todo eso porque se hace un poco mas empiojado el
multi-RDBMS...
Saludos.
Fabio.
--~--~---------~--~----~------------~-------~--~----~
Para escribir al Grupo, hágalo a esta dirección:
[email protected]
Para más, visite: http://groups.google.com.ar/group/NHibernate-Hispano
-~----------~----~----~----~------~----~------~--~---