zoukankan      html  css  js  c++  java
  • Oracle的GUID:Raw(16)

      最近用了Oracle作为开发的数据库。以前用Sqlserver的时候用GUID作为主键的(数据类型:uniqueidentifier),Oracle的GUID类型变成RAW(16)了。从数据库读出来RAW(16)放到DateTable里,这个RAW(16)是个Byte[16]数组,这就没法"="之类的进行比较了。所以得转成GUID。

    .NET中:

    //RAW(16)转到GUID:

     dt.Columns.Add("Test_idGuid");//添加Guid列

    foreach (DataRow row in dt.Rows)
    {
      row["Test_idGuid"] = new Guid((byte[])row["Test_id"]).ToString();
    }

    DataRow[] dts = dt.Select("Test_idGuid = '" +row["Test_idGuid"].ToString()+"'");

    //GUID转到RAW(16):

    BitConverter.ToString(Guid.Parse(dt.Rows[0]["Test_idGuid"].ToString()).ToByteArray()).Replace("-","");

    //////////////////////////////////////////////////////////////////

    ORACLE中产生RAW(16):

    select SYS_GUID() from dual; //dual是一个虚拟表,用来构成select的语法规则,oracle保证dual里面永远只有一条记录。

  • 相关阅读:
    FILTER(过滤器)
    HDFS优缺点
    python运算符
    python变量类型
    python变量存储
    python编码问题
    【一:定义】python 简介
    如何学一门新技术
    Django安装
    redis 安装及启动关闭
  • 原文地址:https://www.cnblogs.com/ThinkWorld/p/3305165.html
Copyright © 2011-2022 走看看