Dain
> I added the function mapping code to the EJB-QL to SQL translation engine. I
> added mappings for MS SQLServer, Oracle, MySQL and PostgreSQL to the
> standard jboss cmp xmp file.
>
> Notes:
> - These mappings are completely based on info from the 'SQL in a Nutshell'
> book, so they may not work (I don't use any of these databases).
> - PostgreSQL doesn't have a three argument position function, so I didn't
It is simply two functions
position(?2 in substring(?1 from ?3))+?3
> map it.
> - Send me any corrections or change it your self.
> - If not mapping is provided the system defaults to {fn concat(param1,
> param2)} style functions.
>
> The mappings follow this message.
>
> -dain
>
>
> Oracle:
> <function-mapping>
> <function-name>concat</function-name>
> <function-sql>(?1 || ?2)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>substring</function-name>
> <function-sql>substr(?1, ?2, ?3)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>length</function-name>
> <function-sql>len(?1)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>locate</function-name>
> <function-sql>instr(?1, ?2, ?3)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>abs</function-name>
> <function-sql>abs(?1)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>sqrt</function-name>
> <function-sql>sqrt(?1)</function-sql>
> </function-mapping>
>
>
> MS SQLServer:
> <function-mapping>
> <function-name>concat</function-name>
> <function-sql>(?1 + ?2)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>substring</function-name>
> <function-sql>substring(?1 FROM ?2 FOR ?3)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>length</function-name>
> <function-sql>len(?1)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>locate</function-name>
> <function-sql>charindex(?1, ?2, ?3)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>abs</function-name>
> <function-sql>abs(?1)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>sqrt</function-name>
> <function-sql>sqrt(?1)</function-sql>
> </function-mapping>
>
> MySQL:
> <function-mapping>
> <function-name>concat</function-name>
> <function-sql>concat(?1, ?2)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>substring</function-name>
> <function-sql>substring(?1 FROM ?2 FOR ?3)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>length</function-name>
> <function-sql>length(?1)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>locate</function-name>
> <function-sql>locate(?1, ?2, ?3)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>abs</function-name>
> <function-sql>abs(?1)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>sqrt</function-name>
> <function-sql>sqrt(?1)</function-sql>
> </function-mapping>
>
> PostgreSQL:
> <function-mapping>
> <function-name>concat</function-name>
> <function-sql>(?1 || ?2)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>substring</function-name>
> <function-sql>substring(?1 FROM ?2 FOR ?3)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>length</function-name>
> <function-sql>length(?1)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>abs</function-name>
> <function-sql>abs(?1)</function-sql>
> </function-mapping>
> <function-mapping>
> <function-name>sqrt</function-name>
> <function-sql>sqrt(?1)</function-sql>
> </function-mapping>
>
>
>
> _______________________________________________
> Jboss-development mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/jboss-development
>
>
_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development