以字符串格式将ORACLE RAW转换为Standard GUID

布朗先生

我试图寻找一个解决方案转换Oracle RAW GUIDString格式为标准GUID格式。我找不到用例的解决方案。这是我要寻找的示例:

ORACLE RAW (String): 9BB2A2B8DF8747B0982F2F1702E1D18B 

需要使用Java代码将其转换为标准或带括号的GUID,

B8A2B29B-87DF-B047-982F-2F1702E1D18B or {B8A2B29B-87DF-B047-982F-2F1702E1D18B} 

感谢您的帮助。

Aris2World

一种简单的方法是在选择RAW GUID时将其转换为VARCHAR。然后从结果集中将其读取为字符串。这是公式:

select 
 upper(
    regexp_replace(
        regexp_replace(
            hextoraw('9BB2A2B8DF8747B0982F2F1702E1D18B'),
            '(.{8})(.{4})(.{4})(.{4})(.{12})',
            '\1-\2-\3-\4-\5'
        ),
        '(.{2})(.{2})(.{2})(.{2}).(.{2})(.{2}).(.{2})(.{2})(.{18})',
        '\4\3\2\1-\6\5-\8\7\9'
    )
 ) from dual

这是我在其中找到查​​询的参考(由于原始错误,我必须对其进行调整):https : //community.oracle.com/thread/1063096?tstart=0

或者,如果您想使用Java来做到这一点,那么用Java转换上述解决方案就非常简单了:

/**
 * input: "9BB2A2B8DF8747B0982F2F1702E1D18B"
 * output: "B8A2B29B-87DF-B047-982F-2F1702E1D18B";
 */
public String hexToStr(String guid) {       
    return guid.replaceAll("(.{8})(.{4})(.{4})(.{4})(.{12})", "$1-$2-$3-$4-$5").replaceAll("(.{2})(.{2})(.{2})(.{2}).(.{2})(.{2}).(.{2})(.{2})(.{18})", "$4$3$2$1-$6$5-$8$7$9");
}

使用该类的更标准的方式是java.util.UUID不可能的,因为Oracle的实现SYS_GUID()与RFC 4122不兼容。请参见Oracle的SYS_GUID()UUID RFC 4122是否兼容?

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将Javascript字符串转换为Guid

来自分类Dev

将GUID转换为字符串实体框架

来自分类Dev

如何将字符串转换为Guid?

来自分类Dev

Json Deseralizer无法将字符串转换为guid

来自分类Dev

将guid字节转换为javascript中的字符串

来自分类Dev

将字符串集合转换为GUID集合

来自分类Dev

将guid转换为sas put语句的字符串

来自分类Dev

可能将字符串转换为GUID?

来自分类Dev

为什么ExpandoObject无法将Guid转换为字符串?

来自分类Dev

导入和保存数据时,SSIS将字符串转换为GUID

来自分类Dev

如何将guid转换为* char

来自分类Dev

将路径转换为其GUID形式

来自分类Dev

将ObjectGuid从AD转换为GUID Powershell

来自分类Dev

将GUID结构转换为LPCSTR

来自分类Dev

如何将guid转换为* char

来自分类Dev

将GUID转换为NSString-ObjectiveC

来自分类Dev

将ObjectGuid从AD转换为GUID Powershell

来自分类Dev

Powershell 将整数转换为 guid

来自分类Dev

将字符串格式转换为

来自分类Dev

从字符串转换为uniqueidentifier时转换失败-两个GUID

来自分类Dev

如何在C#中将System.Guid强制转换为字符串

来自分类Dev

将GMT格式的字符串转换为datetime格式

来自分类Dev

如何使用Oracle日期格式将DateTime转换为C#中的字符串

来自分类Dev

如何将oracle数字类型转换为具有格式的字符串?

来自分类Dev

如何通过Oracle函数to_date()将java格式ddMMyyyyHmmss的字符串转换为日期?

来自分类Dev

Oracle:如何将字符串转换为日期格式

来自分类Dev

COM:将“ const GUID *”转换为const wchar_t *

来自分类Dev

将IDictionary <Guid,string>转换为IEnumerable <SelectListItem>

来自分类Dev

将IDictionary <Guid,string>转换为IEnumerable <SelectListItem>

Related 相关文章

热门标签

归档