[#7439] Add ORACLE12C support for the STANDARD_HASH function

This commit is contained in:
lukaseder 2018-04-26 14:49:58 +02:00
parent 26983fb28f
commit 80dd835cb7
2 changed files with 24 additions and 5 deletions

View File

@ -13718,11 +13718,17 @@ public class DSL {
* <td><code>MD5( ... )</code></td>
* </tr>
* <tr>
* <td>Oracle</td>
* <td>Oracle 11g</td>
* <td>
* <code>LOWER(RAWTOHEX(SYS.DBMS_CRYPTO.HASH(UTL_RAW.CAST_TO_RAW( ... ), SYS.DBMS_CRYPTO.HASH_MD5)))</code>
* </td>
* </tr>
* <tr>
* <td>Oracle 12c</td>
* <td>
* <code>LOWER(STANDARD_HASH( ... , 'MD5'))</code>
* </td>
* </tr>
* </table>
*/
@Support({ MARIADB, MYSQL })
@ -13745,11 +13751,17 @@ public class DSL {
* <td><code>MD5( ... )</code></td>
* </tr>
* <tr>
* <td>Oracle</td>
* <td>Oracle 11g</td>
* <td>
* <code>LOWER(RAWTOHEX(SYS.DBMS_CRYPTO.HASH(UTL_RAW.CAST_TO_RAW( ... ), SYS.DBMS_CRYPTO.HASH_MD5)))</code>
* </td>
* </tr>
* <tr>
* <td>Oracle 12c</td>
* <td>
* <code>LOWER(STANDARD_HASH( ... , 'MD5'))</code>
* </td>
* </tr>
* </table>
*/
@Support({ MARIADB, MYSQL })

View File

@ -37,6 +37,8 @@
*/
package org.jooq.impl;
import static org.jooq.impl.SQLDataType.VARCHAR;
import org.jooq.Configuration;
import org.jooq.Field;
@ -53,14 +55,19 @@ final class MD5 extends AbstractFunction<String> {
private final Field<String> argument;
MD5(Field<String> argument) {
super("md5", SQLDataType.VARCHAR, argument);
super("md5", VARCHAR, argument);
this.argument = argument;
}
@Override
final Field<String> getFunction0(Configuration configuration) {
switch (configuration.family()) {
switch (configuration.dialect()) {
@ -70,7 +77,7 @@ final class MD5 extends AbstractFunction<String> {
case MARIADB:
case MYSQL:
default:
return DSL.field("{md5}({0})", SQLDataType.VARCHAR, argument);
return DSL.field("{md5}({0})", VARCHAR, argument);
}
}
}