看到别人好像是在key后面加上0.

解决方案 »

  1.   

    你是说这样??
    <finder-query><![CDATA[(= PkEmail $0)]]></finder-query>
    那个$0是第一个参数的意思
      

  2.   

    String str = "007";
    char[6] key = str.toCharArray();
    for ( int i = str.length; i < 6; i++) {
       key[i] = 0;
    }
    不行帮你问问。
      

  3.   

    谢谢,你帮我问问吧,你那个key和str怎么用我不明白,因为我写的是cmp的ejb,所以查找方法是写在xml里面的
      

  4.   

    谢谢,你帮我问问吧,你那个key和str怎么用我不明白,因为我写的是cmp的ejb,所以查找方法是写在xml里面的
      

  5.   

    对不起没有问着,
    你的问题是这样的,对于char类型,
    当你存入到数据库的长度小于char的长度时,
    SQL Server、DB2记录你存入长度的实际长度,
    Oracle将后边补上0(记得不是太清楚了),
    在Cmp时比较就回出现问题。
    我们用的是JAVA访问,对于char的变量都对照数据库中的长度用0补齐。
    你用XML我不知道如何写。