bla*_*pit 2 java database oracle function h2
我在oracle中有以下功能,我必须转换为h2.任何人都可以帮助我.我不知道这样做:
create or replace function unpack_info (p_trackchar table.ordchar%type)
return varchar2 is
l_res varchar2(8);
begin
select decode(bitand(to_number(ascii(p_trackchar)),1),1,'1','0') ||
decode(bitand(to_number(ascii(p_trackchar)),2),2,'1','0') ||
decode(bitand(to_number(ascii(p_trackchar)),4),4,'1','0') ||
decode(bitand(to_number(ascii(p_trackchar)),8),8,'1','0') ||
decode(bitand(to_number(ascii(p_trackchar)),16),16,'1','0') ||
decode(bitand(to_number(ascii(p_trackchar)),32),32,'1','0') ||
decode(bitand(to_number(ascii(p_trackchar)),64),64,'1','0') into l_res
from dual;
return l_res;
end;
Run Code Online (Sandbox Code Playgroud)
我曾尝试先做一些基础知识但是这个函数的创建不起作用:
CREATE ALIAS HTS.TEST AS $$
String nextPrime(String value){
return null;
}
$$;
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
错误:SQL Befehl中的语法Fehler"CREATE ALIAS HTS.TEST AS [ ] $$ String nextPrime(String value){return null"SQL语句中的语法错误"CREATE ALIAS HTS.TEST AS [ ] $$ String nextPrime(String value) {return null"[42000-162]
这是翻译的正确方法还是我能做什么?
我创建了一个别名(测试一个)并且可以执行它.现在,我必须为unpack:info创建别名.有人可以帮助我解决语法等问题.该函数在h2中如何看作别名?
我无法重现该问题。您究竟是如何运行该声明的?可能您使用仅发送部分查询的工具运行该语句?或者在“$$”之前可能有一个“特殊字符”(某种 unicode 空间)?我试过这个:
create schema hts;
CREATE ALIAS HTS.TEST AS $$
String nextPrime(String value){
return null;
}
$$;
Run Code Online (Sandbox Code Playgroud)
您可以在 H2 控制台中再试一次吗?
小智 7
使用'作为转义序列而不是$$.如果你想使用转义序列使用$$.所以代码看起来像:
CREATE ALIAS HTS.TEST AS '
public static String nextPrime(String value){
return null;
}
';
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8537 次 |
| 最近记录: |